

doc_wbkというブックのSheets(2)の内容をdoc_wbk2のActiveSheetにコピーしようとしています。
以下のコードの5行目で「アプリケーション定義またはオブジェクト定義エラー」が出てしまいます。ブックやシートまで指定しないといけないのかと思い doc_wbk.Sheets(2) を5行目行頭に追加しましたが変わりません。逆に5行目行頭の . を外してやるとアクティブシートの内容をコピーしてしまいます。Sheets(2)の内容をコピーしてやるにはどうしたらよいでしょうか?よろしくお願いします。
Set doc_wbk = Workbooks.Open(doc_dir + doc_file, 0)
With Sheets(2)
If .Range("A4").Value <> "" Then
row_num = .Range("a65536").End(xlUp).Row
.Range(Cells(4, 1), Cells(row_num, 11)).Copy doc_wbk2.ActiveSheet.Cells(row_num2 + 1, 1)
End If
End With
No.1ベストアンサー
- 回答日時:
CellsとRangeが別々のシートを見ているためです
単に Cellsと書いてしまうと Withから外れてしまいます
.Range( Cells(4,1), Cells(row_num,11) )
と記述すると RangeはSheets(2) Cells(4,1)とCells(row_num,11)はActiveSheetになります
これでは Excelは困ってしまうわけです
.Range( .Cells(4,1), .Cells(row_num,11) )
とWithが掛かるように『.Cells』と記述しましょう
ありがとうございます。
エクセルオブジェクトは扱うのが難しいですね。
VBAコマンド解説等のサイト見てもこのような規則について説明してあるところがないですからね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
-
4
エクセルVBAでオートフィルター最上行を取得するには
Excel(エクセル)
-
5
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
6
単一グループのグループ関数ではありません。
Oracle
-
7
エクセル イベントマクロ Changeイベントを複数作りたい
Access(アクセス)
-
8
アプリケーション定義またはオブジェクト定義のエラー
Visual Basic(VBA)
-
9
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
10
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別ブックをダイアログボックス...
-
オブジェクトは、このプロパテ...
-
VBA シート名が一致した場合の...
-
ワイルドカード「*」を使うとう...
-
ADOで複数のBookから抽出
-
VBA 別ブックからコピペしたい...
-
VBSでExcelのオープン確認
-
VBAで別のブックにシートをコピ...
-
ExcelVBA:すでに開かれている...
-
エクセルVBAでテキストボックス...
-
アクセスからエクセルへのデー...
-
VBの処理結果をEXCELシ...
-
pythonでクラスで複数のメソッ...
-
VBA ブックを開かずにブック内...
-
複数ブックを別のブックのひと...
-
Excelマクロ 該当する値の行番...
-
VBA 複数のブックに同じ列を表...
-
Excelブックがアクティブになっ...
-
【ExcelVBA】zip圧縮されたCSV...
-
VBA シートをコピーする際に Co...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
複数のエクセルファイルとシー...
-
VBA シートをコピーする際に Co...
-
別ブックをダイアログボックス...
-
VBA 別ブックからコピペしたい...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
VBAで別のブックにシートをコピ...
-
VBA コードを実行すると画面が...
-
VBAで別ブックのシートを指定し...
-
【ExcelVBA】zip圧縮されたCSV...
-
【Excel VBA】書き込み先ブック...
-
2つ目のコンボボックスが動作...
-
[Excel]ADODBでNull変換されて...
-
Excelマクロ 該当する値の行番...
-
VBA 実行時エラー 2147024893
-
Excelのマクロコードについて教...
-
Excel にて、 リストボックスの...
-
【ExcelVBA】インデックスが有...
-
VBA アプリケーション定義また...
-
【Excel VBA】表の列の値毎に分...
おすすめ情報