• ベストアンサー

セルの値をファイル名として習得したい

Excel2000でセルの値をファイル名として習得したい Excel2000でVBA SaveAsメッソドを使用しファイルを保存しようと考えております。 この際ファイル名をセルの値より取りたいと考えております。 どのようにすればよいかお教えください。 セルの値は関数CONCATENATEを使用しいくつかの文字を結合したものです。

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.1

例えば、ファイル名として、Sheet1のA1を使う場合、   Dim myFilename As String 'ファイル名   '例えば   myFilename = Worksheets("Sheet1").Range("A1")   ActiveWorkbook.SaveAs myFilename のようにしたらどうでしょうか。

knyacki
質問者

お礼

すばやい回答ありがとうございました。

関連するQ&A

  • エクセルでセル値をファイル名にして保存しようと思っています。

    エクセルでセル値をファイル名にして保存しようと思っています。 エクセル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で分岐させようと思っています。 宜しくお願い致します。

  • VBA(Excel)でセルの値をbasファイルに読み込む方法

    現在Excelでツールを作っておりまして VBA(Excel)でセルの値をbasファイルに読み込みたいんですが そのような事は出来るのでしょうか? どなたか分かる方がいましたら教えてください。 よろしくお願いいたします。

  • エクセルのファイルを、A2セルに入っている日付をファイル名として、保存したい。

    エクセルのVBAでファイルに名前を付けて、指定場所に保存したいのですが、過去の質問を読んでもよく分からなかったので教えてください。 A2セルに、2007/07/26 という日付が入っています。 この日付をファイル名として保存したいのですが、日付の形式は20070726とか、070726にしたいです。 ファイルの保存場所パスは、例えば、 S:\AAA\BBB\CCC\DDD というフォルダの中です。 ActiveWorkbook.SaveAs のあとにどのように続ければよいのでしょうか? 丸投げで申し訳ありませんがよろしくお願いいたします。

  • エクセルのセルの書式設定の前方0埋めの値をその後の表示でも有効にする方法

    今、エクセルに1,0,0という値があり、それぞれ(本当は)固定長で5桁、2桁、2桁であり前方が0埋めの値です。 この値をあわせて9桁の値にしたいと思っています。 まずそれぞれのセルの値をユーザの書式設定で前方0で埋めると00001,00,00となります。 これらをConcatenate関数であわせると100となってしまいます。本当は000010000と表示させたいと思っています。 Concatenate関数を使用したときに000010000と表示させるにはどうしらたいいでしょうか?

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

    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見積書)

  • セル内の改行と結合

    エクセルで複数のセルを結合させるときに セル内での改行を組み込ませることは可能ですか? 関数の「CONCATENATE」を使うとして ”セル内改行コード”なんてのはあるんでしょうか?

  • Excelのセル結合

    お願いします。Excel2000です。 複数セルの値を別のセルに結合させ表示させたいのです。 ただしセルの結合時には間にスペースを空け結合させるのが条件です。 たとえば =A1&B1 だとすると結合したセルの値にはスペースが入りません。 また =Concatenate(A1,B1) も結合したセルの値にはスペースが入りません。 どなたか教えていただけませんか? A1(スペース)B1としたいのです。 以上わかりにくい点がございましたらご指摘くださいませ。

  • エクセルに関しての質問です。

    エクセルに関しての質問です。 マイナス(ー)の値を▲に変える関数はあるのでしょうか? セルの文字を繋ぎ合わせる関数CONCATENATE()をしようしているのですが あるセルで-3000と入力するのですが 結合したセルでは▲3000と出したいのです。 ずっと悩んでいます。 よろしくお願いします。

  • 結合したセルの左上以外のセルから値を参照したい

    エクセルで、セルA1:C3を結合しています。 =A1 として参照する場合には、結合セルの値を参照できますが、 =B1とか=A2とかのように参照すると、0が表示されてしまいます。 B1やA2のセルを指定した場合にも、結合セルの値を参照できるような シート関数はないのでしょうか。 =KANSU(B1)とか=KANSU(A2)とした場合に、 結合セルの値を得られるシート関数を教えてください!

  • 日付を入力したセルをファイル名にして保存するには

    こんにちは。VBA 初心者です。 あるセルに日付を入力しています。 そのセルは書式設定の表示形式・日付で「2001/3/14」と入力した時に、「2001年3月14日」と表示される様に設定しています。 そしてこのファイルをマクロで名前をつけて保存するとき、上記のセル(の値)をファイル名したいのですが、2001\3\14と認識され、エラーが出ます。 セルに日付を入力する時に、出来るだけかな入力はせず、日付をファイル名にして保存するにはどういう方法があるでしょうか。 わかりにくい説明で申し訳ありません。ウィンドウズXP・エクセル2003です。よろしくお願いします。

専門家に質問してみよう