No.1ベストアンサー
- 回答日時:
こんばんは!
なかなか回答が付かないようですが・・・
ご自身でコードを記載された経験はあると思いますが、重要な情報が抜けています。
① 開きたいファイルの拡張子は「xlsx」で良いのか?
② ブック名は判ってもそのブックの、どのSheetのB~D列を抜き出すのか?
③ コピー元が判ってもコード記載ブック(This Workbook)のどのSheetに抽出するのか?
④ 抽出先はどの列なのか?
等々、上記①~④があいまいなままではエラーの原因になります。
回答者が条件を限定するのは、話が逆なのですが、
そこを設定しないとコードそのものが書けませんので
コピー元のブックの「Sheet1」のB~D列最終行までとします。
尚、すべてのブック(Sheet)は同じレイアウトで1行目が項目行になっていて、
データは2行目以降にあるとします。
そして貼り付け先は「This Workbook」のSheet1の1行目項目は入力済みで
A~C列に順次上から貼り付けるものとします。
以上の前提条件でのコードです。
標準モジュールです。
Sub Sample1()
Dim myPath As String, fN As String
Dim lastRow As Long
Dim wB As Workbook, wS As Worksheet
myPath = ThisWorkbook.Path & "\"
fN = Dir(myPath & "*xlsx")
Application.ScreenUpdating = False
Do Until fN = ""
Workbooks.Open myPath & fN, Password:="1234"
Set wB = ActiveWorkbook
Set wS = wB.Worksheets("Sheet1")
lastRow = wS.Cells(Rows.Count, "B").End(xlUp).Row
Range(wS.Cells(2, "B"), wS.Cells(lastRow, "D")).Copy _
ThisWorkbook.Worksheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Offset(1)
Application.DisplayAlerts = False
wB.Close
Application.DisplayAlerts = True
fN = Dir()
Loop
Application.ScreenUpdating = True
MsgBox "完了"
End Sub
※ この手の質問は何度も補足が付くことが多いパターンです。
お判りだと思いますが、VBAの場合1行・1列でも違った場合は意図しない動きになります。
そういう点を踏まえて、質問する際には細かい情報を書いた方が回答が付きやすいと思います。m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- Excel(エクセル) フォルダAから1つのファイルだけを、フォルダBへを移動するVBAについて 2 2022/07/25 11:45
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Access(アクセス) Access VBA を利用して、フォルダ内のファイルの名称を変更したい 1 2023/08/03 08:27
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行して 作業フォルダの中にある PDFファイル名を 3 2023/07/01 15:16
- Excel(エクセル) Excelの関数でこんな処理ができますか 1 2023/02/08 13:46
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel2017 フィルタ昇順並びがA...
-
エクセルの時刻のカウントが出...
-
【Excel VBA】指定した行の最大...
-
基準日以前のデータを範囲を指...
-
エクセル関数について
-
エクセル関数について
-
平均変化率の信頼区間
-
Excelで並び替え後にア行...
-
excel / ピポッド 日数を出したい
-
EXCEL 最終行のデータを他のセ...
-
文字列を比較し、相違するフォ...
-
オートフィルタ後のデータから...
-
検索条件に合うセルの個数を数...
-
急ぎ!色のついたセルを非表示...
-
複数回答のクロス集計の方法
-
エクセルで長い行を5行ごとに1...
-
エクセルの主軸と第2軸の0を合...
-
別のシートから値を取得するとき
-
エクセルで文字が白くなる
-
1年分のデータから特定の月分...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel2017 フィルタ昇順並びがA...
-
Excelで並び替え後にア行...
-
エクセルで行の高さ及び列幅の...
-
平均変化率の信頼区間
-
急ぎ!色のついたセルを非表示...
-
オートフィルタ後のデータから...
-
【Excel VBA】指定した行の最大...
-
エクセルの時刻のカウントが出...
-
基準日以前のデータを範囲を指...
-
EXCELで日付を比べ3か月以内の...
-
マクロで行の高さを設定したい
-
エクセル関数について
-
文字列を比較し、相違するフォ...
-
エクセル関数について
-
excel / ピポッド 日数を出したい
-
エクセル VBA 行間隔を飛ばした...
-
時間の重複チェック
-
プルダウンに【なし、平均、デ...
-
EXCEL 最終行のデータを他のセ...
-
列と行の名前(重複あり)が交...
おすすめ情報