すみません
(1)Workbooks(p_addr_Name).Worksheets(sheet_check).Range(Cells(7, 2), Cells(19, 2)).Copy
(2)Workbooks(p_SH_weekly).Worksheets("Sheet1").Range(Cells(7, i), Cells(19, i)).PasteSpecial Paste:=xlPasteAll
その際(2)で「実行時エラー'1004'」が出ました、教えてください。
*上記引数は全部入りました
宜しくお願いします
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
こんにちは。
エラー1004 ですよね。ぱっと見で、Range 引数内の親オブジェクト装飾ミス
かなと思います。もちろん、#3 ご回答の可能性もあります。
こちらは NG ソース。
Sub test1_NG()
Worksheets("Sheet1").Range(Cells(1, 1), Cells(5, 3)).Copy
Worksheets("Sheet2").Range("A1").Paste
End Sub
1. Range の親オブジェクトとして Worksheets("Sheet1")が装飾されている
2. 一方で Range の引数 Cells(1, 1), Cells(5, 3) には親オブジェクトの
装飾がされていない。したがって、現在 Active なシートが親オブジェクト
として自動補完される
つまり、現在 Sheet2 がアクティブで、上記ソースが実行された場合、
Worksheets("Sheet1").Range(Cells(1, 1), Cells(5, 3)).Copy
は、
Worksheets("Sheet1").Range(Worksheets("Sheet2").Cells(1, 1), _
Worksheets("Sheet2").Cells(5, 3)).Copy
と同意となる。Range で装飾されたシートと Range の引数内で指示している
セルのシートが異なる不整合が原因です。
VBA では、親オブジェクトを省略した場合、大抵の場合で現在 Active なもの
が親オブジェクトとして補完されます。したがって、親オブジェクトの装飾を
意識的にしないと、このようなエラーに悩まされてしまいます。
こちらは修正ソース。
Sub test2_OK()
With Worksheets("Sheet1")
Range(.Cells(1, 1), .Cells(5, 3)).Copy
End With
Worksheets("Sheet2").Range("A1").PasteSpecial Paste:=xlPasteAll
End Sub
With で Range の引数内の親オブジェクトを装飾しています。
Range の引数内でシートが異なる等の不整合が無い場合は、特に Range に
親オブジェクトを装飾する必要はありません。
No.2
- 回答日時:
#1です。
ミスしました。
Workbooks(p_SH_weekly).Worksheets("Sheet1").Cells(7, i).PasteSpecial Paste:=xlPasteAll
です。
No.1
- 回答日時:
Workbooks(p_SH_weekly).Worksheets("Sheet1").Cells(19, i).PasteSpecial Paste:=xlPasteAll
とか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VBAのエラーが直せません 4 2023/06/12 22:10
- Visual Basic(VBA) 送付元、送付先が同じ大きさの複合セルのコピーがVBAで、できません。 1 2023/06/01 20:51
- Excel(エクセル) なぜExit Subがあるのかわかりません 4 2023/02/19 12:34
- Visual Basic(VBA) 【VBA】ボタンに登録したマクロがエラーになる 4 2022/07/25 17:47
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) 【至急】Excel 同一人物の情報を一行にまとめる(複数行) 6 2022/05/24 17:58
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応 3 2022/12/27 22:27
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
VBAで既に開いている別アプリケ...
-
「Columns("A:C")」の列文字を...
-
VBからPDFファイル自動生成...
-
実行時エラー 3265「要求された...
-
VBAからPDFファイルにパスワー...
-
Excel VBAでWordの複数ファイル...
-
Word、VBAでの取り消し線文字の...
-
エクセルのVBAの標準モジュール...
-
(初心者です)VBAについて。「実...
-
PowerPointVBAでスライドマスタ...
-
findメソッドの変数について
-
Excel VBAでIEにアクセスするプ...
-
AccessVBAで「dim dbs as datab...
-
VBAで別のシートに図形描画
-
UserForm1.Showでエラーになり...
-
[VBA]CDOメッセージ送信エラー
-
VB6 エクセルに画像貼り付け
-
Accessフォームから指定のExcel...
-
VBAで作成するメール(開封確認...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
エクセルのVBAの標準モジュール...
-
実行時エラー 3265「要求された...
-
Excelでフィルタをかけると警告...
-
VBAで既に開いている別アプリケ...
-
エクセルマクロエラー「'Cells'...
-
テキストボックス中の文字列の...
-
VBAで Set wb = Sheets(1).Cop...
-
ある文字列が全て数字であるか...
-
VBAからPDFファイルにパスワー...
-
VBScriptでファイルの日時順(降...
-
EXCEL VBA オートシェイプナン...
-
[VBA]CDOメッセージ送信エラー
-
エクセルVBAで2つの画像を比較...
-
PowerPointVBAでスライドマスタ...
-
UserForm1.Showでエラーになり...
-
上下の位置揃えについて
-
VBAについてです。 初心者です...
-
VBAで作成するメール(開封確認...
おすすめ情報