現在、EXCEL2000で下記のコードを実行しています。
が、EXCEL2003で実行すると、 .UsedRange.Copy myb
のコードが実行されているのにコピー出来ていません。
ファイルは開いていて、エラーは出ていないのです。
問題点わかる方教えていただけますか?
Sub 日別データ読込()
Dim rngsaki As Range
Dim pathmacrobook As String
Dim namebook As String
Dim motobook As Workbook
Dim myb As Variant
Set rngsaki = Workbooks("残高集計用.xls").Worksheets(3).Range("a2")
pathmacrobook = ThisWorkbook.Path & "\CSV読込データ12\"
namebook = Dir(pathmacrobook & "*.xls")
Do While Not namebook = ""
Set motobook = Workbooks.Open(pathmacrobook & namebook)
Set myb = Workbooks("残高集計用.xls").Worksheets(3).Range("A65536").End(xlUp)
With motobook.Worksheets("Sheet1")
.UsedRange.Copy myb
End With
motobook.Close False
namebook = Dir()
Loop
MsgBox "完了しました"
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは。
まず、今回のマクロだけでは、
>Set rngsaki = Workbooks("残高集計用.xls").Worksheets(3).Range("a2")
これは、生きていないですね。
実際に試したわけではないのですが、バージョンによって違いが出るとも思えないですね。
.Worksheets("Sheet1").UsedRange.Copy
ただ、ここが気になりますね。空の場合は、「1セル」しかコピーしませんが、それを貼り付けても、無駄になってしまいます。
絶対に、空はないならよいのですが、本当は、
If WorksheetFunction.CountA(Worksheets("Sheet1").Cells) >0 Then
などで、シートを検査したほうがよいと思いますね。なお、必ず、Sheet1 というシートがあるという前提です。
それから、最後尾の次になるから、myb.Offset(1) でしょうね。
正しく動くかは分かりませんが、書き換えてみました。
Sub 日別データ読込R()
Dim DestBook As Workbook
Dim pathmacrobook As String
Dim namebook As String
Dim myb As Range
pathmacrobook = ThisWorkbook.Path & "\CSV読込データ12\"
Set DestBook = Workbooks("残高集計用.xls")
namebook = Dir(pathmacrobook & "*.xls")
Do While Not namebook = ""
Set myb = DestBook.Worksheets(3).Range("A65536").End(xlUp)
With Workbooks.Open(pathmacrobook & namebook)
On Error Resume Next
.Worksheets("Sheet1").UsedRange.Copy myb.Offset(1)
On Error GoTo 0
.Close False
End With
namebook = Dir()
Loop
Set DestBook = Nothing
MsgBox "完了しました"
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAが止まります。 1 2022/09/02 14:51
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) EXCELのVBAについて 2 2023/07/05 17:17
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【エクセル】オートフィルタで...
-
エクセルで特定の色の数字だけ...
-
フィルタをしても最下行を常に...
-
ピボットテーブルでは時間の表...
-
常にタイトル行と合計行を表示...
-
アンケートの集計
-
EXCELで0を除いた平均値...
-
ピボットの集計方法「合計」初...
-
ピボットテーブルで同じデータ...
-
Excelで毎日の売上を入力すると...
-
ピボットを更新すると数式が入...
-
ピボットテーブルのページエリ...
-
エクセル2007で小計機能を使い...
-
excelで集計の合計を降順に並べ...
-
VLOOKUP関数とCOUNT関数等の組...
-
複数のピボットテーブルを一括...
-
エクセルの小計を自動的に色づ...
-
EXCELで増減率を計算したいです
-
エクセルで一定範囲内に含まれ...
-
エクセルで長い行を5行ごとに1...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで特定の色の数字だけ...
-
【エクセル】オートフィルタで...
-
フィルタをしても最下行を常に...
-
ピボットテーブルでは時間の表...
-
VBAで重複する項目を1つにまと...
-
アンケートの集計
-
ピボットの集計方法「合計」初...
-
複数のピボットテーブルを一括...
-
ピボットを更新すると数式が入...
-
ピボットテーブルのページエリ...
-
EXCEL 重複データの集計の仕方
-
エクセル 関数を使った横方向の...
-
エクセルの小計を自動的に色づ...
-
Excelの集計結果だけをコピー貼...
-
エクセル、リソース不足エラー...
-
excelで集計の合計を降順に並べ...
-
EXCELで増減率を計算したいです
-
いい機能だけど、毎回めんどく...
-
ピボットテーブルで同じデータ...
-
Excel : 二通りの合計が合わな...
おすすめ情報