[[20250528142403]] 『VBAでの転記について』(金ちゃん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『VBAでの転記について』(金ちゃん)

エクセルのマクロフィルへの転記について

vbaの有識者の方、ご教授願います。

<やりたい事>
同一フォルダ内にある別のエクセルファイル"テスト****"から始まるファイル名の"サンプル"シートにある
B11セルからI11セルまでで、B列にデータが入っている最下行までデータ取得しコピーし、
そして、マクロファイルのSheet2のB10セルに取得した全データをコピペするコードを以下に記載しておりますが、上手く貼り付けができません。
どこが悪いかお手数ですがご指摘願います。
宜しくお願い致します。

Sub Sample()

    Dim bkName As String
    bkName = Dir(ThisWorkbook.Path & "\テスト*.xlsx")
    Application.ScreenUpdating = False
    Do While bkName <> ""
        Dim ws As Worksheet
        Set ws = Workbooks.Open(ThisWorkbook.Path & "\" & bkName).Worksheets("サンプル")
        With ThisWorkbook.Worksheets("Sheet2")
            Dim pasteRow As Long
            pasteRow = .Cells(Rows.Count, "B").End(xlUp).Row
            pasteRow = IIf(pasteRow < 10, 10, pasteRow + 1)
            Range("B11:I" & Cells(Rows.Count, "I").End(xlUp)).Copy .Cells(pasteRow, "B")
        End With
        ActiveWorkbook.Close False
        bkName = Dir()
    Loop
    Application.ScreenUpdating = True
End Sub

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


さっと見ただけだけど・・・

範囲指定の仕方があまいのでは・・・。
(通りすがり) 2025/05/28(水) 14:55:51


 ステップ実行して確認しましょう

 ぱっと見でアヤシイのはここ

 Range("B11:I" & Cells(Rows.Count, "I").End(xlUp)).Copy .Cells(pasteRow, "B")
 を
 ws.Range("B11:I" & ws.Cells(ws.Rows.Count, "I").End(xlUp)).Copy .Cells(pasteRow, "B")
 に修正

 蛇足ですが、
 ActiveWorkbook.Close False
 Activeなんちゃらは、操作したい対象がほんとにAcitiveなのか保証されるときしか使わない方が吉
 ws.Parent を使うか、Workbooks.Openで返るWorkBookオブジェクトを変数に入れて使う
(´・ω・`) 2025/05/28(水) 14:59:06

(´・ω・`)様

ご指摘ありがとうございます。
早速試しに↓のコードに修正してみましたが、なぜか1行しか貼り付けられませんでした。。実際には1000行ぐらいあるのですが、、、

ws.Range("B11:I" & ws.Cells(ws.Rows.Count, "I").End(xlUp)).Copy .Cells(pasteRow, "B")
(金ちゃん) 2025/05/28(水) 15:11:35


 ステップ実行したんですか?

 >B列にデータが入っている最下行までデータ取得しコピーし
 と書いてるのに、コードを見るとI列の最終行を取得しているようですが、
 I列にちゃんとデータ入ってますか?
(´・ω・`) 2025/05/28(水) 15:30:54

(´・ω・`)様

失礼いたしました。
無事解決いたしました。
ありがとうございました。
(金ちゃん) 2025/05/28(水) 15:40:05


 365オンリーなら
 ws.Range("B11:.I" & ws.Rows.Count).Copy 
 という書き方をしてもいいかもしれません
(´・ω・`) 2025/05/28(水) 15:45:14

(´・ω・`)様

承知いたしました。

ご助言ありがとうございます。
(金ちゃん) 2025/05/28(水) 17:18:37


コメント返信:

[ 一覧(最新更新順) ]


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