<VBA>複数のエクセルファイルの1シ・・・に関する記事
"質問
<VBA>複数のエクセルファイルの1シート目をコピーし、新規のワークブックにマージして貼り付ける方法についてExcel VBAについての質問があります。複数のエクセルファイルの1シート目をコピーし、新規のワークブックにマージした形で貼り付ける方法についてご教授ください。<処理の概要>-----------------------------?ファイルの選択方法 ファイルを開くボックスのダイアログを出現させ、 任意のパスから複数のEXCELファイルを選択できるようにする。?新規ブックの作成 新規ブックを作成する。Loop?対象データの取得 上記で選択した複数のエクセルファイルを読み込み、 1シート目のセルA6B6から最終行目のデータを対象とする。 ※空白のデータが出たら、次のファイルに進む。 ※レイアウトはどのファイルも同じ?処理 ?の対象データをコピーし、?で作成した新規ブックのA列、B列貼り付ける。 (2つ目のファイル以降は、前のファイルで貼り付けたデータの最終行に貼り付ける)??で作成した新規ブックのC列に取り込み対象となったファイル名を記載endloop-----------------------------です。<参考イメージ>・1つめのファイル 1、あ 2、い 3、う 4、え 5、お・2つめのファイル 6、か 7、き 8、く 9、け 10、こ↓・作成予定のファイル 1、あ、1つめのファイル 2、い、1つめのファイル 3、う、1つめのファイル 4、え、1つめのファイル 5、お、1つめのファイル 6、か、2つめのファイル 7、き、2つめのファイル 8、く、2つめのファイル 9、け、2つめのファイル 10、こ、2つめのファイル
回答
あなたがどのくらいのプログラムの経験があるか、Excelの経験があるか推測しながらの回答です。?ファイルの選択方法 Dim fname As StringSub Filepick() Dim FLDname As String FLDname = "D:\\ddd\\data\\*.xls" fname = "" With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = FLDname .AllowMultiSelect = True If .Show = True Then fname = .SelectedItems(1) End If End WithEnd Subファイルを開くのウインドウがでてファイル選択ができます。実際にファイルを開くには自分でWorkbook.Openメソッドを実行する必要があります。?新規ブックの作成Workbooks.add ですね?対象データの取得Openした時点でActiveになります。Worksheets(1)で最初(一番左の)のシートを表します。最終行の取得はcells(Rows.count
おすすめリンク
- http://www.georgiehale.com/cat7/page7 -
- http://www.georgiehale.com/cat7/page8 -
- http://www.georgiehale.com/cat7/page9 -
- http://www.georgiehale.com/cat7/page10 -
- http://www.georgiehale.com/cat8/page1 -
- http://www.georgiehale.com/cat8/page2 -
- http://www.georgiehale.com/cat8/page3 -
- http://www.georgiehale.com/cat8/page4 -
- http://www.georgiehale.com/cat8/page5 -
- http://www.georgiehale.com/cat8/page6 -