• ベストアンサー
  • 暇なときにでも

エクセル A1の内容を ファイル - 名前を付けて保存 のとき自動入力するには?

基本のファイル名は ABCです。 セルA1は 56赤 とあります。 このとき ファイル - 名前を付けて保存 でファイル名を 56赤ABC としたいです。 今は、ファイル - 名前を付けて保存 としたとき、ABC と出るので その左に自分で 56赤 と入力して、56赤ABC としてます。 これをマクロとかを使って、ファイル - 名前を付けて保存 のときに セルA1 ファイル名 と自動で出て欲しいのですができますか?

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数283
  • ありがとう数0

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

  • ベストアンサー
  • 回答No.3
  • Wendy02
  • ベストアンサー率57% (3570/6232)

こんにちは。 最初に、ファイルをどのように作っているかが問題だと思います。以下のコードですと、Application の扱い方が変わります。Application側にインスタンスを設けるか、それとも、ボタンだけでよいのかが分かりません。既存のブックがある場合と、そうでない場合、新規ブックの場合ではコードが変わります。以下は、単にボタンにインスタンスを設けただけで、解除方法は書かれていませんが、解除の方法は、単に、Set ClassButton =Nothing でよいです。 >ファイル - 名前を付けて保存 のときに >セルA1 ファイル名 と自動で出て欲しいのですができますか? たとえば、このようになります。 挿入-Class モジュール 名前は変更しないでください。Class1 です。 Private WithEvents NewBtn As Office.CommandBarButton Public Property Set myNewBtn(ByVal myBtn As CommandBarButton)  Set NewBtn = myBtn End Property Private Sub NewBtn_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean)  Dim FileName As String  Dim KeyWord As String  Dim Ret As Integer  If ThisWorkbook.Worksheets("Sheet1").Range("A1").Value <> "" Then   KeyWord = ThisWorkbook.Worksheets("Sheet1").Range("A1").Value   FileName = "ABC" & KeyWord & ".xls"   Ret = Application.Dialogs(xlDialogSaveAs).Show(FileName)   CancelDefault = True  End If End Sub 標準モジュール 'Option Explicit Private ClassBtn As New Class1 Sub SetClass() With Application  Set ClassBtn = New Class1  Set ClassBtn.myNewBtn = .CommandBars("Document").FindControl(, 748) End With End Sub Sub Auto_Open()  Call SetClass End Sub

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • エクセル保存時に自動で日付

    お世話になります。 エクセル2003で保存するときに、 ファイル名の頭に、あるセルの日付を毎回打たなくても自動でつけることってできますか? マクロでもかまいませんが。 たとえばA1に061212と入っていたら、 そのブックを保存するときに、061212 業務日報って自動で保存時の名前に出るように なるでしょうか?

  • エクセルで保存時のファイル名

    エクセルでファイルを書き込む(「ファイル」-「名前を付けて保存」) 時に、セル内にあるテキストをファイル名として自動的に書き込み時に 指定する事はできるでしょうか。 例えば A1セルに"名古屋"、A2セルに"10月"と入っている時に 「名前を付けて保存」で、ファイル名=名古屋10月.csv (ファイルの種類はCSV)としたいのですが。 ご教授、よろしくお願いいたします。

  • 名前を付けて保存

    Win-me Excel2000です。 Excelで名前を付けて保存するときに ファイル名がBook1.xlsになっていますが 保存するときにBook1.xlsではなく セルA1の文字が自動で入っているにはどうしたらよいですか。 何か、説明が悪いですけど。 保存するたびにファイル名をつけなくてはいけなくて B00k1では後で、開くときに内容がわかりにくくて、 A1セルの文字がファイル名でいいものですから。

その他の回答 (2)

  • 回答No.2
  • imogasi
  • ベストアンサー率27% (4552/16286)

Sheet1のA1に「ABC」を入力しておきます。 標準モジュールに Sub test01() Application.Dialogs(xlDialogSaveAs).Show arg1:=Worksheets("Sheet1").Range("A1") End Sub を貼り付け実行します。 おなじみの「名前をつけて保存」のダイアロウグ画面が出て、 ファイル名の欄が「ABC」になって、待機状態になります。 ここに左に「56赤」を入れる、という方法を考えてはどうですか。 左に入れるというのが、奇異な暗示だし、ファイル名全体を上記コードの前に作ってしまうのが普通科と思いますが。 a=Inputbox()ででも「56赤」の部分をとれば、 arg1:=a & "ABC" で確認採用方式ができます。「保存」ボタンをクリックする必要あるが。 それを嫌うなら、ActiveWorkbook.SaveAs ファイル名 で良いのでは。

共感・感謝の気持ちを伝えよう!

  • 回答No.1
  • marbin
  • ベストアンサー率27% (636/2290)

SaveAs メソッド を使います。 使い方はヘルプをご参照ください。

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • エクセルで「ファイル保存名」を自動作成したい

    エクセルで、複数の店舗で使用する「販売日報」を作成しております。 各店舗からいただくこの日報は別のシステムで取り込みを行う為、 ファイル名を統一する必要があり、店舗側で勝手にファイル名を作成 できないように、例えば、日報のエクセルのシート内に「ファイル保存」 ボタンを作成し、ファイル名を自動作成するマクロを登録したいと思って おりますが、マクロはほとんど分からず、いいアイデアが浮かびません。 どなたかお知恵をお貸しいただけないでしょうか? ■ファイル名は、下記のように「販売日報」を先頭にして店舗名_保存日_ 保存時間の体裁を考えてます。  ファイル名:販売日報_(店舗名)_(日付)_(時間)   ※(店舗名)は販売日報(エクセル)内で「A1セル」など固定した    場所に入力されており、その値を参照したい。   ※「日付」「時間」も自動作成したい。 うまくお伝えすることができませんが、イメージとしては「ファイル保存」 ボタンを押すと、エクセルで左上の「ファイル」-「名前を付けて保存」 を押した際に表示される「保存先を選択する画面」が表示され、ファイル名 には、『販売日報_(店舗名)_(日付)_(時間)』が既に表示されている、 といった具合です。 いろいろネットを介し調べましたが、ぴったりのものがなく悩んでおりました。 何卒宜しくお願いいたします。

  • エクセルで"名前を付けて保存"を容易にしたいです。

    エクセルである原紙があって、それを元にファイルを作成するのですが、名前を付けて保存時に名前をその作成したファイルに関連したものをつけるのですが、毎回書き換えるのが面倒でなりません。 "名前を付けて保存"のボタンを作成して、例えばA1のセルに入れた名前が自動でその名前になるようなことはできないのでしょうか? 詳しい方おられましたら教えて下さい。

  • EXCELのシート名自動入力

    EXCELでシート名にセルA1の値を自動入力したいので、 下記のマクロを使いましたが、いちいちマクロを実行しないと自動入力できません。 Public Sub SheetName() ActiveSheet.Name = Range("A1").Value End Sub これを、マクロを実行しなくても、セルA1の値が変わった時点で 自動的にシート名も変わるようにできないでしょうか?

  • エクセルで、ファイル内に入力した日付を、保存時のファイル名に反映したい

    エクセルで、ファイル内に入力した日付を、保存時のファイル名に反映したい。 お世話になります。請求書の作成・保存を効率よくしたいと考えています。 例:作ったファイルの、ある特定のセル(日付を入力)で平成22年6月と表示された状態で名前をつけて保存をクリックすると、ファイル名の欄に自動的に2206・・と反映され、なおかつ、自分の言葉で現場名などを入力して2206グーマンション・・という風にして保存したいです。もっというと、保存先のフォルダも自動的に2206フォルダとかに入るようにできないでしょうか?? 詳しい方、教えていただけるとありがたいです・・!お願いします

  • エクセルで<名前をつけて保存>するマクロに、保存時マクロを含めて保存させることは可能ですか

    エクセル、マクロとも初心者です。 (VBAはわかりません) エクセルのテンプレートファイルを開いて、必要箇所だけ入力すると、その日の日付をファイル名として、<名前を付けて保存する>ようなマクロを作りました。 このままだと、マクロも一緒に保存されてしまいますよね。 マクロを含まずに、<名前を付けて保存>させるマクロって可能ですか? できるとしたら、どうやればいいでしょうか。

  • 名前をつけてエクセルで自動で保存

    質問させていただきます。  エクセルで名前をつけて自動で保存するマクロか、もしくは他のやり方でも構いませんが、以下を作りたいと思います。  (1)スキャナーで10枚読み込んだとします。  (2)そのうちの1枚の画像を画面の左上ピッタシに合わせて他のエクセルのシートのA1の入力値を名前にして、保存します。  (3)(2)を2枚目以降同じ要領で二枚目はA2を名前に、3枚目はA3の・・・と繰り返し、図がなくなったら止まることをしたいのですが・・・  どのようにしたらよろしいでしょうか? :補足:  素人ですので、質問文がわけのわからないものになっています;よろしくお願いいたします。

  • Excel CSVファイル セル名を名前として保存

    いつもありがとうございます。エクセル2003XPです。 毎回USBメモリーに上書きされてくる、同名のCSVファイルを別エクセルファイルに読み込む作業をしております。 その作業は外部データの読み込みを記憶マクロとして問題ないのですが、エクセルに読み込んだCSVファイルは、かぶらないようにそのつど、Kill を使い削除しております。 ただ完全に削除なので対策として、 読み込んだCSVファイルの1行目のセル名をファイル名として名前を変えて保存、 PCの"C:\Documents and Settings\元データ に毎回CSVもしくは、エクセルファイルに名前を変更して保存する処理をボタンひとつで出来ないか、考えております。 ネットで色々と検索をしておりますが、勉強不足です。 参考でサンプルマクロは見つけましたが、どのように変更すれば良いか分かりません。ご享受いただければ助かります。 CSVファイル名 : log001.csv(毎回、USB) 保存したいファイル名 : CSVファイルを開いた時のA1のセル名(日付です) 保存場所 : PCのマイドキュメントの元データファイル 保存したいファイル形式 : CSVもしくはExcelファイル Sub THSFILE_SAVE() Dim myFname0 As String Dim myFname As String On Error GoTo ERRH '現在のファイル名取得 myFname0 = ThisWorkbook.Name '新しいファイル名をセルA1の値とする myFname = Sheets(1).Range("A1").Value '同じ階層に保存 ThisWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & myFname If myFname0 <> myFname & ".xls" Then '前の名前のファイルを削除する場合は下の一行を有効にしてください 'Kill ThisWorkbook.Path & "\" & myFname0 End If Exit Sub ERRH: End Sub この処理はCSVファイルの読み込み先のエクセルファイルから、行いたいと考えております。 よろしくお願致します。

  • 複数ファイルの同じ位置のセル内容を、それぞれファイル名・シート名にして保存したい

    VBA初心者ですが、いろいろなQ&Aを検索して、やりたいことの解決方法を模索しているのですが、私の疑問にドンピシャの回答が見つからず悩んでいます。 目的は、あるフォルダ内の、複数のランダムなファイル名のエクセルファイルについて、それぞれのファイルを開き、アクティブシートのA1セルの入力内容に基づき、そのシートの名前を変更し、ファイル名も変更して保存するという作業です。(例えば、A1に「山田」と入っていたら、シート名も「山田」にして、「山田.xls」で保存する。) マクロの自動作成で、例えば「A」というファイルは開いてシート名を変え、ファイル名を付けて保存するくらいのことはできるのですが、ファイル名がランダムに代わったり、ファイル数が複数になるとできません。 このようなマクロを作ることは可能なのでしょうか?。 よろしくお願いいたします。

  • Excel マクロで名前を付けて保存

    Excel で NOW() 関数で表示させてあるセル(D1)があります。 このブックは、閉じる前に「名前を付けて保存」します。 そのときファイル名の後に D1 という文字を加える操作を、キー入力なしにマクロで行いたいのですが、どうしたらよいでしょうか。 教えて下さい。よろしくお願いします。

  • エクセルでセル内容でpdfで保存しメールの起動まで

    いつもお世話になっております。 ここで絶大なる支援を受けて表題に関するいくつかのマクロを教えていただいて色んな定常作業に組み込んで非常に便利に使い始めたのですが、下記の組み合わせが試行錯誤(当方の実力)ではどうしても達成出来ないのでHELPです。 1.エクセルの複数の指定セルを繋げてファイル名にする。   A1セルが「赤」、B1セルが「色」の場合はファイル名を「赤色」としたい。 2.上記のファイルを指定のパスのホルダーに保存する 3.そのpdfファイルを添付したメール画面でOutlookを起動する。 1.2.+指定アドレスに送信、まで全自動で完了する完成版はあるのですが、自動送信ではなくメールの起動までの方が非常に汎用性が高いので何とかお願いします。 また、ファイル名に2つのセルの内容をつなぐこともうまくいきませんでした。