エクセルでセル値をファイル名にして保存しようと思っています。
エクセルでセル値をファイル名にして保存しようと思っています。
エクセル2003では以下の方法でセル値を取得して保存しています。
'Cell値を取得
strName2 = Sheets("#######").Range("A1").Value
strName3 = Sheets("*******").Range("B2").Value
'strName2の値が空の場合、現在のブック名を代入
If strName2 = "" Then strName = ThisWorkbook.Name
'セル値の結合
sName = strName3 + strName2
'名前を付けて保存] ダイアログ ボックスを表示
fName = Application.GetSaveAsFilename(InitialFileName:=sName, fileFilter:="Excel(*.xls), *.xls")
'ファイル名を取得したら保存
If fName <> False Then ActiveWorkbook.SaveAs fName
同様の操作を2007以降で「マクロを有効にして保存」を行いたいのですが、どの様にすればいいのでしょうか?
(自動保存では以下の様になる状態の事です。)
ActiveWorkbook.SaveAs Filename:="#:\*******.xlsm", FileFormat:= _
xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
2007の時の「'名前を付けて保存] ダイアログ ボックスを表示」の方法が分かりません。
共通の命令文では出来でしょうから、最終的にはエクセルのバージョンを取得して、IFで分岐させようと思っています。
宜しくお願い致します。
お礼
お礼が遅くなりまして申し訳ございません。 上手く行きました。 バージョンの件、ありがとうございます。 今後、気をつけます。 ありがとうございました。