• ベストアンサー

ファイル名に変数を割り当てたい

EXCEL VBAで ファイル名に変数を割り当てて保存したいのですが、 うまく行きません。どこがおかしいのか教えてください。 C\サンプル\見込200704 を変数で割り当てて保存したい。 バージョン301 = "200704" 四月 = "C:\サンプル\見込" & "バージョン301" Range("A1").Select ActiveWorkbook.SaveAs Filename:=四月, _ FileFormat:=xlCSV, Password:="", WriteResPassword:="", _ ReadOnlyRecommended:=False, CreateBackup:=False ActiveWorkbook.Close False

質問者が選んだベストアンサー

  • ベストアンサー
  • pick52
  • ベストアンサー率35% (166/466)
回答No.2

お、質問をよく読んでなかった。 四月 = "C:\サンプル\見込" & "\" & バージョン301 ではなく、 四月 = "C:\サンプル\見込" & バージョン301 ですね。 ややこしいのであまり変数名とかに日本語使わない方がいいですよ。 (一応、VBAでは使用できますけど通常の言語では使用できないものだし 合わせた方がいいと個人的には思います)

kuro1019
質問者

お礼

ありがとうございました。できました。 変数名に日本語を使わない方がいいですね。 アルファベットだと見にくいのでついつい日本語にしてしまいます。 でも他のプログラムだと使用できないとの事なので アルファベットを使うようにしたいと思います。 良い事を教えて頂きありがとうございました。

その他の回答 (1)

  • pick52
  • ベストアンサー率35% (166/466)
回答No.1

質問する場合は、サンプルだけでなくできればどうなって欲しいのに どうなるのかなどを正確に書いた方がいいですよ。 (そうしないと回答する側がソースを解析して動作を予測するか 実際に試さないといけなくなりますからその分でも面倒になります) ぱっと見た目、 四月 = "C:\サンプル\見込" & "バージョン301" が問題なんじゃ...と思います。 四月 = "C:\サンプル\見込" & "\" & バージョン301 ですよね。 (こうしないと C:\サンプル に 見込バージョン301 というフォルダが ないとそもそもファイルを作成できませんし、ファイル名はないし)

関連するQ&A

  • マクロが思い通りに動きません

    エクセルでマクロを使いボタンを 作りました。ボタンを押すとHDDとDVDに保存される仕組みになっています Sub DVD() ChDir "E:\" ActiveWorkbook.SaveAs Filename:=Format(Now, "yyyy-mm-dd(hh時mm分ss秒)"), FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False End Sub Sub HDD() ActiveWorkbook.SaveAs Filename:= _ "C:\Documents and Settings\***\デスクトップ\ファイル名.xls", FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False End Sub これだとDVDへ保存が上手くいきません。DVDからエクセルを開いて使えば問題ないのですが、デスクトップから開くと日付入りのデータがデスクトップに保存されてしまいます。 どうやって書き換えたらいいでしょうか

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

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

  • Excel/VBAのファイル保存

    いつもここでは大変お世話になっています。 以下のように名前をつけて保存をしているのですが、 同名のファイルがあった場合でも上書き確認せずに上書きをさせる方法を教えて下さい。 お願いします。 ActiveWorkbook.SaveAs Filename:= _ "\\PC名\ディレクトリ名\ファイル名.xls", FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False

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

     エクセルのマクロです。  マクロを実行した時に、保存先とファイル名は任意に入力して(その部分だけは、マクロ実行者が入力して)、その後もマクロを実行させたいのですがどうすれば良いのでしょうか? たとえば、 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  上記の場合は、保存先もファイル名もこちらが指定していますが、その部分だけは、マクロの実行者に任意指定及び入力させたいのです。  マクロ初心者なので、よろしくお願いします。

  • マクロ 保存の仕方

    ' 指定の場所に保存する 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)等を付けて保存したいのですが。

  • ExcelのマクロでCSVファイルを開くと遅いのですが

    ExcelのマクロでCSVファイルを開くと遅いのですが速く開く方法はありますか? 普通にファイル-開くに比べてかなり遅いです。 下記のVBAで記述してあります。 Workbooks.Open Filename:=fname ActiveWorkbook.SaveAs Filename:=fname, FileFormat:=xlCSV, _ CreateBackup:=False ActiveWorkbook.Close savechanges:=False

  • VBAでのシートコピーについて

    VBAでシートを新しいブックにコピーして、名前を付けて保存したいのですが、同じファイル名が存在すると、必ず「上書きしますか?」のダイアログが表示されてしまいます。無条件で上書きする方法ってありませんか? 今は↓のようなコードを書いてます。 Application.ScreenUpdating = False Sheets("sheet1").Copy ActiveWorkbook.SaveAs Filename:= _ "C:\Book1.xls", FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False ActiveWindow.Close

  • ファイル保存のマクロについて

    ActiveWorkbook.SaveAs Filename:= _ "C:\Documents and Settings\Owner\aaa\bbb\ccc\" & Range("k2").Value & ".xls", FileFormat:= _ xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _ , CreateBackup:=False 上記のようにマクロを組みましたがうまく作動しません。 セル"k2"の値は日付が入力されています。 その値が原因で読み取れないみたなのですが。 (セルの書式設定の日付で●月●日で設定しています)

  • エクセルマクロで保存をする際の質問

    エクセル2003をXPで使っています。 あるシートに入力をしたあと、セルA1(変数を"number"としています)に入力させたデータをファイル名にして特定のフォルダに保存させています。 具体的なことは下記の通りです。 ActiveWorkbook.SaveAs Filename:="C:\入力済みデータ\" & number & ".xls", FileFormat:= _ xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _ , CreateBackup:=False ActiveWorkbook.Close ところが、C:\入力済みデータフォルダに同じ名前のファイルが存在していたとき、 "○○というデータがすでに存在します。置き換えますか?"と聞かれますよね。 そのときに"いいえ"を選択するとエラーになります。 "いいえ"を選択したとき、別名をつけられるようにするにはどうしたらいいでしょうか。 よろしくご教示ください。お願いいたします。

  • Aのシートにデータがあり、BのシートからAのデータを読み込み、エクセル

    Aのシートにデータがあり、BのシートからAのデータを読み込み、エクセル形式で表示するVBAで組まれたエクセルがあります。 Bに読み込まれたエクセルだけを、デスクトップに保存したいのです。 ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\gsoumu7.COMP\デスクトップ\最新ver\" & bkname & ".xls", _ FileFormat:=xlNormal, Password:="", WriteResPassword:="", _ ReadOnlyRecommended:=False, CreateBackup:=False 以前は動いていたのですが、しばらくぶりに動かしたら動かなくなってしまいました。 以前はOFFICE2000か2003で今は2007になっています。 大変困っています。どなたかお助けください。