
1回目実行した時は2つのExceclがフォルダーにあった場合、1つ目のbookのデータの一番下の空行に2つ目のbookのデータが貼り付けされるのですが、2回目実行した時には1回目のデータに上書きされてしまうので、2回目以降のデータ貼り付けも一番下の空行に貼り付けていきたいのです。
どうしたらいいでしょうか。
ご教授お願いいたします。
Sub データ取り込み()
Dim buf As String, i As Long
Dim j
Dim r As Long
buf = Dir(Sheets("book保存場所").Range("A1").Value & "\*.xls")
Do While buf <> ""
Workbooks.Open Worksheets("book保存場所").Range("A1").Value & "\" & buf
For r = Sheets("入力").Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1
If Sheets("入力").Cells(r, 1).Text <> "" Then Exit For
Next
Sheets("入力").Range("A2:AG" & r).Copy
ThisWorkbook.Activate
ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues
Workbooks(buf).Activate
Application.CutCopyMode = False
Workbooks(buf).Close SaveChanges:=False
buf = Dir()
Loop
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは
通常であれば、ご提示の処理で順に次の行にペーストされてゆくと思います。
一方で、ご質問のような事象が起きる可能性の一つとして考えられるのは、ペ-ストしたデータの最初のセルの値(A2セルの値)が空白で、ペースト後のシートのA列が空白になっている場合でしょうか。
このようなデータが存在すると、
>ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select
では、空白セルは無視されてもう一つ上の行を取得して、その次の行を参照しますので、結局、同じ行にペーストするということが起こり得ます。
End(xlUp)を利用して最終行を取得する場合には、対象とする列に『必ず値が入っていることが保証されている』列を指定するのが原則です。
※ 他にも原因があるかも知れませんが、なんとなく上記の可能性が高いのではないかと思いましたので。(違っていたらスルーしてください)
こんにちは
お返事いただきましてありがとうございます。
教えていただきましたこと、確認いたしました!
A列は日付を入力する列であり、空白は無しの原則でデータがありましたので、こちらは大丈夫でした。
そしてよく見てみると実行ボタンの内容に Call を使っており、その1つの call に入力しているデータの削除がありました!
これを走らせてから上記の内容を走らせていたので、上書きとなっておりました。
こちらの確認不足でお時間割いていただき申し訳ございませんでした。
ありがとうございました。
教えていただいたこと今後につなげていきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Visual Basic(VBA) フォルダの場所を可変にしたいです(マクロ) 4 2023/05/11 10:00
- Visual Basic(VBA) オブジェクトが見つかりません 1 2023/06/24 19:43
- Visual Basic(VBA) ExcelVBAでDo Until loopのネスト、IF文を使って一致する物と一致しない物としたい 11 2022/12/24 17:46
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) VBA 請求書自動作成 3 2022/04/24 01:58
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Excel(エクセル) マクロで最終行から上に検索を逆にしたい 1 2022/05/17 18:27
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
VLOOKUP関数を使用時、検索する...
-
検便についてです。 便は取れた...
-
値が入っているときだけ計算結...
-
excelでsin二乗のやり方を教え...
-
Excel 数値の前の「 ' 」を一括...
-
尿検査前日に自慰行為した時の...
-
EXCELで式からグラフを描くには?
-
彼女のことが好きすぎて彼女の...
-
2つの数値のうち、数値が小さい...
-
【Excelで「正弦波」のグラフを...
-
腕を見たら黄色くなってる部分...
-
精液の落とし方を教えてください
-
ある範囲のセルから任意の値を...
-
リンク先のファイルを開かなく...
-
小数点以下を繰り上げたものを...
-
病院側から早く来てくださいと...
-
Excel 0目標に対して数字があ...
-
EXCELで条件付き書式で空白セル...
-
化合物のモル吸光係数データベ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
尿検査前日に自慰行為した時の...
-
至急!尿検査前日にオナニーし...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
値が入っているときだけ計算結...
-
リンク先のファイルを開かなく...
-
EXCELで条件付き書式で空白セル...
-
2つの数値のうち、数値が小さい...
-
VLOOKUP関数を使用時、検索する...
-
尿検査の前日は自慰控えたほう...
-
MIN関数で空白セルを無視したい...
-
小数点以下を繰り上げたものを...
-
風俗店へ行く前のご飯
-
エクセルで空白セルを含む列の...
-
Excel 数値の前の「 ' 」を一括...
-
【Excelで「正弦波」のグラフを...
-
納豆食べた後の尿の納豆臭は何故?
-
EXCELで式からグラフを描くには?
-
ある範囲のセルから任意の値を...
おすすめ情報