[[20210125192820]] 『【VBA】複数のファイルの特定の箇所をコピーして=x(たかちゃん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『【VBA】複数のファイルの特定の箇所をコピーして、別ブックにペースト』(たかちゃん)

ローカルに、202004.xlsx〜202104.xlsxが12ファイルあります。

これらのエクセル表の特定の箇所(A1)をコピーして、別ブックにペーストしたいです。

その時に、「ファイル名」 「ペーストした値」が順に並べさせたいです。
例)

202004.xlsx   1000
202005.xlsx   2000
202006.xlsx   3000

よろしくお願いいたします。

< 使用 Excel:unknown、使用 OS:unknown >


1)順番を気にしないでブックを開いて
2)ブック名とRange("A1").Valueを、セルに書き込み
3)最後に、ブック名で並べ替え

のようにすれば、よいです。

(マナ) 2021/01/25(月) 20:08


それを実現するVBAを教えていただけないでしょうか
(たかちゃん) 2021/01/26(火) 10:35


 Sub test()
    Dim ws As Worksheet
    Dim wb As workboook
    Dim p As String, fn As String
    Dim n As Long

    p = "D:\********\****\"
    Set ws = Worksheets.Add

    fn = Dir(p & "*.xlsx")

    Do While fn <> ""
        Set wb = Workbooks.Open(p & fn)
        n = n + 1
        ws.Cells(n, 1).Value = fn
        ws.Cells(n, 2).Value = wb.Sheets(1).Cells(1).Value
        wb.Close False
        fn = Dir()
    Loop

    ws.Columns("A:B").Sort ws.Columns(1)

 End Sub

(マナ) 2021/01/27(水) 22:05


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.