プロが教える店舗&オフィスのセキュリティ対策術

 エクセルVBAについての質問です。
 エクセルのマクロで、Aというファイルを開いて、そのうち必要なワークシートだけを抽出し、新しいブックに移動し、その新しいブックを新しいブックのsheet1のセルC2の文字列をファイル名として保存するようなマクロをくみたいと思っています。
 ファイルを開いて必要なワークシートだけを抽出し、新しいブックに移動するところまではできましたが、新しいブックのセルC2の文字列をファイル名として保存することができません。FNを変数として宣言して、C2の文字列を代入し、FNをファイル名として保存しようとすると、ファイルにFNという名前が付いてしまいます。どうすれば、C2の文字列をファイル名として保存できるのでしょうか。なお、保存するフォルダはc:\変換ファイル\6月です。どなたか教えてください。よろしくお願いします。

A 回答 (2件)

FNを文字列として扱っていませんか?以下でどうでしょう?




Sub 保存()

Dim FN As String
FN = Range("C2")
ActiveWorkbook.SaveAs Filename:="C:\変換ファイル\6月\" & FN & ".xls"
End Sub
    • good
    • 15
この回答へのお礼

見事に、今まで必ずデバックがでていたのが嘘のようにできました。本当にありがとうございました。
 今回はおかげさまでできるようになりましたが、HitomiKuroseさんの回答でちょっと分からない点があるのですがまた質問させていただいてよろしいでしょうか。
 今までの自分のステートメントと比べると&がついている点が違っているのですが、&はどのような意味を持っているのでしょうか。あと、FNには文字列(例えば企業名など)が入るので、文字列として扱っていたのですが、それではまずいのでしょうか。もしよろしければ、ご回答寝返ればと思います。
 今回はありがとうございました。

お礼日時:2001/07/31 22:58

&は素直に連結です。



FNの中身は文字列ですが、FN自身は変数なのに
"C:\変換ファイル\6月\FN.xls"
などと書くとFNと云う文字列として扱われる(""の中は文字列)ので変数としてのFNの中身が反映されません。
回答した方法ですと、FNは""の外にあるので変数として認識され、中身が反映します。
    • good
    • 2
この回答へのお礼

 お礼が遅くなって申し訳ありません。
 "" や&の使い方が全然わかっていなかったようです。大変、勉強になりました。どうもありがとうございました。

お礼日時:2001/08/04 18:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています