• 締切済み

エクセル VBA についてご教授願います。

ActiveWorkbook.SaveAs Filename:= "C:\Documents and Settings\ユーザー名\材料明細\" & Range("A1").Value & ".xls" このコマンドで、材料明細に("A1")の値のファイル名で保存しています。 材料明細にいくつかのフォルダがあります。そのフォルダを選択して、("A1")の値のファイル名で保存する方法を教えて下さい。

みんなの回答

  • tsubuyuki
  • ベストアンサー率45% (699/1545)
回答No.2

> 材料明細にいくつかのフォルダがあります。 この中からフォルダを選択するのは、人力ですか? だとしたら、ダイアログを出すのがわかりやすいのではないでしょうか。 それともどこかにフォルダを選択できる要素があるのでしょうか? (例えばどこかのセルにフォルダ名になりえる文字列があるとか) だとしたら、    "C:\Documents and Settings\ユーザー名\材料明細\" & [フォルダ選択材料] & Range("A1").Value & ".xls" としてやればOKです。

回答No.1

ダイアログでフォルダを選択??

関連するQ&A

  • ファイルの保存先を任意にしたい(マクロ)

     エクセルのマクロです。  マクロを実行した時に、保存先とファイル名は任意に入力して(その部分だけは、マクロ実行者が入力して)、その後もマクロを実行させたいのですがどうすれば良いのでしょうか? たとえば、 ActiveCell.FormulaR1C1 = "1" Range("B1").Select ChDir "C:\Documents and Settings\a\デスクトップ" ActiveWorkbook.SaveAs Filename:= _ "C:\Documents and Settings\a\デスクトップ\ Book1.xls", FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False Range("A2").Select ActiveCell.FormulaR1C1 = "2" Range("B2").Select ActiveWorkbook.SaveAs Filename:= _ "C:\Documents and Settings\a\デスクトップ\ Book2.xls", FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False Range("A3").Select ActiveCell.FormulaR1C1 = "3" Range("B3").Select ActiveWorkbook.SaveAs Filename:= _ "C:\Documents and Settings\a\デスクトップ\ Book3.xls", FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False Range("A4").Select ActiveCell.FormulaR1C1 = "4" Range("B4").Select  上記の場合は、保存先もファイル名もこちらが指定していますが、その部分だけは、マクロの実行者に任意指定及び入力させたいのです。  マクロ初心者なので、よろしくお願いします。

  • EXCEL2000でのVBAについて

    お世話になります。 EXCEL2000のVBで下記のことをしたいのですが、うまく出来ないところがあり対処方法を教えて頂きたいです。 (1)アクティブブックの名前を取得   (2)ブックのセルA1の値を取得 (3)保存ダイアログでA1の値をファイル名にし保存 (4)保存したファイルを閉じる (5)基のアクティブブックを再度開く 以上です。 今できていないのは(1)と(5)です。 基のアクティブブックの名前をプログラム上に直接入力する分には出来るのですが、 ファイル名が変更になった時に、いちいちVBを書き換えるのが面倒なだけです… コードを提示しますので、ご教授願えればと思います。 Sub 保存() Dim ファイル名 As String, フォルダ名 As Object, フォルダ選択 As Object, ファイル名2 As Workbook Set ファイル名2 = ActiveWorkbook ファイル名 = Range("A1").Value Set フォルダ選択 = CreateObject("Shell.Application") Set フォルダ名 = フォルダ選択.BrowseForFolder(0, "保存フォルダを選んでください", 1) ActiveWorkbook.SaveAs Filename:=フォルダ名.items.Item.Path & "\" & ファイル名 & ".xls" MsgBox ファイル名 & ".xls", vbOKOnly, フォルダ名 & "に保存しました" Workbooks.Open "C:\test\" & ファイル名2 Workbooks(ファイル名 & ".xls").Close End sub ファイル名の取得が間違っていると思うのですが、ネットなどで調べてみましたが、よくわかりませんでした。

  • マクロ 保存の仕方

    ' 指定の場所に保存する ActiveWorkbook.SaveAs Filename:= _ "C:\Documents and Settings\Owner\デスクトップ\A\B\" & Replace(Range("k2").Value, "/", "") & ".xls", FileFormat:= _ xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _ , CreateBackup:=False ActiveWorkbook.Close 上記のようにマクロを組みましたが、同じ名前で1回保存すると2回目からエラーします。 2回目から保存名の後ろに(2)、3回目は(3)等を付けて保存したいのですが。

  • エクセル2007 マクロについて教えてください

    エクセルのデータが2個あります。 それぞれ、ファイル名は 顧客データ.xlsと個別シート.xlsです。 顧客データ.xlsには、10名のお客様の情報があり、A1セルには ID番号 と入力してあり、 A2~A11セルにID番号が入力されています。 『個別シート.xlsにマクロで顧客データ.xlsのデータをコピーし、ID番号のフォルダをデスクトップに新規作成し、ID番号を付けて保存する』マクロを作成中です。 顧客番号が1234のお客様のデータを、個別シートにコピーし、デスクトップに1234というフォルダを新規作成し、その中に 個別シート_1234.xls というファイル名で保存をしたいです。 顧客データを自動でコピーするまではできましたが、それ以降ができません。 MkDir "C:\ Documents and Settings\xxx\デスクトップ\nknk\ID " ChDir "C:\ Documents and Settings\xxxi\デスクトップ\nknk\ID " ActiveWorkbook.SaveAs Filename:="個別シート_" & ID & ".xls" ActiveWorkbook.Close マクロを実行すると『実行時エラー76:パスが見つかりません』とエラーになります。 (フォルダ作成の命令文のところが黄色くなります。) ちなみに、個別シートの指定したセルに、IDはコピーされています。 正しく実行できる文を教えてください。また、以降の命令文は正しいでしょうか。 よろしくお願いします。  

  • エクセルVBAでブックを開きたいのですが、

    エクセルVBAでブックを開きたいのですが、 アクティブシートを別のブックに移動させたいのですが、 まず、目的のブックを開く → 移動させたいシート名を右クリック → 移動またはコピー を選択 → 移動先ブック を選択  というふうにしようと思っていますが、 Workbooks.Open Filename:= _ "C:\Documents and Settings\YUMIKO\My Documents\YYYY.xls" のようにファイル名を入れると開くことができました。 が、   Workbooks.Open Filename:= _ "C:\Documents and Settings\YUUKORON\My Documents\Range("F1").Value.xls" のように、アクティブシートの セルF1にファイル名を入れて、開きたいのですが、どうしても開くことができません。いろいろ調べて試しましたが、無理でした。 基本的にマクロで記録で作っている初心者です。 回答よろしくお願いします。

  • ファイルの保存先のパス

    マクロでデスクトップに保存させたいのですが、 ActiveWorkbook.SaveAs Filename:= _ "D:\Documents and Settings\●●●\デスクトップ\Book1.xls", FileFormat:=xlNormal _ , Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False の●●●のように、私のユーザー名が入ります。 このファイルは色々な人に使ってもらいたいので、 LOCALみたいな意味合いの言葉を入れたいのですが、 なんと入れたら良いでしょうか? ご存知の方いらっしゃいましたら宜しくお願いします。

  • Excel VBA 開いているブック名を取得してその名前で保存する方法を教えてください

    フォルダから不特定のファイル名「FoundFiles(i)」を取得してそのブックを開きます。セルA1が空の場合は、開いた場所と異なるフォルダにそのブックを保存させたいと、なんとか、かんとか作ってみたのですが、保存したファイル名がFoundFiles(i).csvになってしまいます。 もともとcsvを読み込んでいるので、拡張子はcsvで良いのですが、その開いたブック名を取得する方法を教えてください。 いろいろ考えて、変えては見たのですがうまくいきません。 使用しているオフィスはExcel2000です。宜しくお願いします。 ↓前後は省略していますが、こんな感じです。 Workbooks.Open Filename:=.FoundFiles(i) Select Case ThisWorkbooks Case Range("A1") = "" ActiveWorkbook.SaveAs Filename:="C:\WINDOWS\デスクトップ\空\FoundFiles(i)"

  • 取得した名前で、新規起動のエクセルに名称をつけての保存方法

    お世話になります 新規にエクセルを立ち上げ、そのエクセルを取得した名称で保存するのはどう書けば良いでしょうか 今現在My Docの下のAAと言うホルダーの中へSn1に入ってくる文字で エクセルを保存したいのですが、どう書けば分かりません。 ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\My Documents\AA:=format ("Sn1")&."xls" よろしくお願いします。

  • C:\Documents and Settings\ユーザー名2\適当なフォルダ名へ保存したいのですが・・・。

    C:\Documents and Settings内の個人毎のフォルダにファイルを保存したいのですがどうしてもうまくいきません。 どなたかわかる方、お力を貸していただけないでしょうか? Dim ユーザー名1 As String Dim ユーザー名2 As String ユーザー名1 = Application.UserLibraryPath  ’ユーザー名格納 ユーザー名2 = Mid(ユーザー名1, 27, 8)    ’ユーザー名切出 ChDir "C:\Documents and Settings\ユーザー名2\適当なフォルダ名" ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\ユーザー名2\適当なフォルダ名r\適当なファイル名.xls", FileFormat:= _ xlNormal (変数:ユーザー名2)にうまく代入されない状態です。 変数の宣言がまずいのでしょうか??? 初心者丸出しの書き方で恐縮ですが、どうかお願いいたします。

  • セルの値を使ってファイルを保存

    1.現在以下の内容で"C8"セルの値を取得してファイルを保存しています。 Sub ファイル保存() C = Range("C8").Value ActiveWorkbook.SaveAs Filename:="C:\Users\moto\Desktop" & C & ".xls" End Sub 2.ファイル名保存時に"H1"の日付もプラスしたいです。 現在は"H1"セルには"2008/11/17"と記入されてますがこれを"20081117"と変更し、"20081117_A見積書"というファイル名で保存する。("C8"=A見積書)

専門家に質問してみよう