[[20190611222225]] 『ブックデータの統合』(ナマステ) ページの最後に飛ぶ

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

 

『ブックデータの統合』(ナマステ)

別ブックのデータを現在開いているブックで統合するときに、上書きされます。

1 操作フォルダ内から、シート「抽出マスタ」で指定したブック名を開きます。
2 開いたブックをフィルターをかけたモノをコピーして貼り付けます。
3 1と2を繰り返します。

【エラー】
 コピペした結果、最後に開いたブックの実績のみとなります。

【コード】

Dim i As Long
Dim Tbook As String
Dim lastrow As Long

Tbook = ThisWorkbook.Name

With Sheets("抽出マスタ")

    For i = 2 To .Cells(Rows.Count, 2).End(xlUp).Row

        lastrow = Cells(Rows.Count, 1).End(xlUp).Row

        Workbooks.Open ThisWorkbook.Path & "\操作フォルダ\" & .Cells(2, 1) & .Cells(i, 2)

        Cells(1, 1).AutoFilter field:=1, Criteria1:="A"
        Cells(1, 1).CurrentRegion.Offset(1, 0).Copy _
        Workbooks(Tbook).Sheets("実績").Cells(lastrow, 2).Offset(1, 0)
        ActiveWorkbook.Close savechanges:=False

    Next
End With

ご教示お願い致します。

< 使用 Excel:Excel2016、使用 OS:Windows10 >


lastrow = orkbooks(Tbook).Sheets("実績")Cells(Rows.Count, 2).End(xlUp).Row

では?

(マナ) 2019/06/11(火) 23:14


もしくは、lastrowを使わず
        Cells(1, 1).CurrentRegion.Offset(1, 0).Copy _
        Workbooks(Tbook).Sheets("実績").Cells(rows.count, 2).End(xlUp).Offset(1, 0)

(マナ) 2019/06/11(火) 23:22


できました!
ありがとうございます。

>lastrow = workbooks(Tbook).Sheets("実績")Cells.(Rows.Count, 2).End(xlUp).Row
場所は明確に指定しないといけなかったんですね。

Workbooks(Tbook).Sheets("実績").cells(・・・・)とすでにworkbooks(Tbook).sheets("実績")と
あるので、変数のlastrowもそれまでに指定した場所につながると思ってました。

(ナマステ) 2019/06/12(水) 01:13


>場所は明確に指定しないといけなかったんですね。

それもありますが、列番号も。

 lastrow = Cells(Rows.Count, 1).End(xlUp).Row
                            ^^~ 

(マナ) 2019/06/12(水) 18:47


コメント返信:

[ 一覧(最新更新順) ]


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