エクセルファイル”202112xx集計表.xlsm"のシート名"マクロ"のA1に”20211212.csv"を事前に記入してあり、シート名"マクロ"のシート内のマクロ実行ボタンを押すとエクセルファイル”20211212.csv"を選択し、そのcsvファイルのB29を"202112xx集計表.xlsm"のF18にコピペしたいと考えています。
変更前のコードはマクロ内で名前を指定しています。
変更後の最初のコード部分でセル内と同じファイル名を選択すると思うのですが、うまくいきません。
エクセルファイルはすべて開かれている状態です。
変更後のコードが間違っている理由も簡単に説明していただけると幸いです。
よろしくお願いいたします。
・変更前
Windows("20211212.csv").Activate
Range("B29").Select
Selection.Copy
Windows("202112xx集計表.xlsm").Activate
Range("F18").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
・変更後
Windows(ThisWorkbook.Sheets("マクロ").Range("A1") & ".csv").Activate
Range("B29").Select
Selection.Copy
Windows("202112xx集計表.xlsm").Activate
Range("F18").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
No.2ベストアンサー
- 回答日時:
No1です。
>インデックスが有効範囲にありませんというエラーが出ます。
「指定したブック名のウィンドウが存在しない」という意味と考えられます。
ご提示のマクロがどこに記述されているのか不明ですが、
MsgBox ThisWorkbook.Sheets("マクロ").Range("A1") & ".csv"
としてみれば、どのようなブック名で指定しているかを確認できるでしょう。
また、指定されたブックが開いた状態でなければ、当然ながらエラーになります。
No.1
- 回答日時:
こんにちは
>うまくいきません。
ではなくて、エラーが出る部分と、その時のエラー内容をきちんと確認しましょう。
想像するところ、
>A1に”20211212.csv"を事前に記入してあり、~~
というのが正しいとしてよいのなら、
>ThisWorkbook.Sheets("マクロ").Range("A1") & ".csv"
の結果は、"20211212.csv.csv"となると考えられますので、「そのようなウィンドウはないよ」と言われるかと・・・
そのような内容のエラーになってはいませんか??
これまた想像ですが、多分、そこを修正すれば、一応動作するのではないでしょうか。
コメントありがとうございます。
".csv"を抜いて、ThisWorkbook.Sheets("マクロ").Range("A1") で試しまたが、型が一致しませんというエラーで実行できません。
また、ThisWorkbook.Sheets("マクロ").Range("A1") & ".csv"でA1に”20211212"と記入して実行すると、インデックスが有効範囲にありませんというエラーが出ます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Excel(エクセル) エクセル VBAでシートのコピーを作りたい 1 2023/05/18 07:42
- Visual Basic(VBA) マクロを短くする 1 2023/01/15 00:11
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/12 10:10
- Visual Basic(VBA) マクロで最終行を取得してコピーしたい 3 2022/04/06 19:07
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCEL マクロ クリップボードク...
-
VBA マクロ実行時エラー’1004Ra...
-
エクセル終了時の保存確認メッ...
-
昨日まで動いていたエクセルの...
-
別のパソコンでエクセルのマク...
-
EXCELで日付を自動でファイル名...
-
エクセルでマクロでテキストデ...
-
エクセルマクロにてパワーポイ...
-
Excelが勝手にシート移動してし...
-
アクセスからエクセルファイル...
-
アクセスでファイルを開いたと...
-
外部データを取り込むマクロ
-
エクセル2013vbaで、見えない名...
-
Excel2010 PERSONAL.xlsbの挙動...
-
コピーしたファイルのマクロを...
-
VBAを一度起動するとずっと出て...
-
EXCEL:マクロの登録ができない...
-
excelファイルに使われているVB...
-
添付ファイルのみを自動印刷し...
-
エクセルファイルを自身のファ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル終了時の保存確認メッ...
-
VBAを一度起動するとずっと出て...
-
【マクロ】その時、その時で変...
-
VBA マクロ実行時エラー’1004Ra...
-
昨日まで動いていたエクセルの...
-
マクロの有効化するダイヤログ...
-
別のパソコンでエクセルのマク...
-
コピーしたファイルのマクロを...
-
EXCEL マクロ クリップボードク...
-
excelファイルに使われているVB...
-
エクセルファイルを自身のファ...
-
Excelマクロ ファイル名が変わ...
-
Microsoft Excelのファイルのエ...
-
Excelが勝手にシート移動してし...
-
excelが別プロセスで起動してし...
-
エクセルマクロ実行中に別ファ...
-
エクセル2013vbaで、見えない名...
-
マクロでマクロを削除する
-
アクセスでファイルを開いたと...
-
Excel2010 PERSONAL.xlsbの挙動...
おすすめ情報