
すみません
(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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
在宅ワークのリアルをインタビュー
ベテラン在宅ワーカーと 在宅ビギナーの方々に、在宅ワークの実情をお教えいただきました。
-
VBA マクロ実行時エラー’1004RangeクラスのPasteSpecialメソッドが失敗
Access(アクセス)
-
1004RangeクラスのPasteSpecialメソッドが失敗
Visual Basic(VBA)
-
excel:PasteSpecialで実行エラー
Excel(エクセル)
-
4
VBAでの値のコピーのエラーについて
Excel(エクセル)
-
5
VBAマクロ 実行時エラーが出たり出なかったり
Excel(エクセル)
-
6
EXCEL VBA シートをコピーする時にエラーが発生してしまう件
Excel(エクセル)
-
7
エクセル、マクロで「末尾を1文字削除」したいのですが
Windows Vista・XP
-
8
エクセル マクロ実行時エラー’1004’
Excel(エクセル)
-
9
VBA 実行時エラー1004 rangeメソッドは失敗しました。globalオブジェクトのエラー
Excel(エクセル)
-
10
【VBA】ワークブックを開く時にエラーが出る場合と出ない場合の違いは?
Excel(エクセル)
-
11
エクセルマクロで「セルのサイズを合わせてください」のエラー表示
Excel(エクセル)
-
12
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
13
ファイル名を今日の日付、時刻で保存する
Visual Basic(VBA)
-
14
VBAでの結合セルのコピー&ペースト
Excel(エクセル)
-
15
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
16
【EXCEL2002】「貼り付け先の書式に合わせる」をVBAで実行したい
Excel(エクセル)
-
17
エクセルで「コピー領域と貼り付け領域の形が違うため、情報を貼り付けることができません」とでます
Excel(エクセル)
-
18
EXCELで変数をペーストしたい
その他(プログラミング・Web制作)
-
19
指定のWORKBOOKを前面表示する方法(エクセル:VBA)
Excel(エクセル)
-
20
EXCEL VBA 配列データの部分コピー
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
エクセルVBAでcode128のバー...
-
5
「Columns("A:C")」の列文字を...
-
6
ExcelVBAでのNZ関数について
-
7
テキストボックス中の文字列の...
-
8
Excelでフィルタをかけると警告...
-
9
VBでPDFファイルを編集する
-
10
VBで引数にDictionaryオブジェ...
-
11
エクセルマクロエラー「'Cells'...
-
12
VBAで作成するメール(開封確認...
-
13
VBAで Set wb = Sheets(1).Cop...
-
14
[VBA]CDOメッセージ送信エラー
-
15
VBScriptでファイルの日時順(降...
-
16
VBからPDFファイル自動生成...
-
17
【VB】【エクセル操作】 SaveAs...
-
18
Excel VBA グラフを任意sheetに...
-
19
エクセルVBAでテキストボックス...
-
20
sheetsメソッドの失敗
おすすめ情報