[[20230412144912]] 『VBA xlookupにて可変の最終行まで選択する方法』(ja) ページの最後に飛ぶ

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

 

『VBA xlookupにて可変の最終行まで選択する方法』(ja)

=@XLOOKUP(RC[13]:R[selection.End(xlDown)]C[13],Sheet2!R2C1:R40C1,Sheet2!R2C2:R40C2)

    Range("A5").Select
    Selection.AutoFill Destination:=Range("A5:A20000")
    Range("A5:A20000").Select

このA20000と仮にしてますが、可変の最終行にするためにはどうすればよろしいでしょうか。

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


訂正です。lookup式の後のselection.End(xlDown)は20000で入れております。可変の最終行とするにはどうすれば良いのでしょうか。
(ja) 2023/04/12(水) 14:56:39

 saisyuu_gyou = Cells(Rows.Count, 1).End(xlUp).Row
 こんな変数を使うとか。

(通りすがり) 2023/04/12(水) 15:32:51


ありがとうございます!もし入れるのでしたら、20000の代わりにCells(Rows.Count, 1).End(xlUp).Rowを入れればよいですか?
(ja) 2023/04/12(水) 15:42:59

 Range("A5:A" & Cells(Rows.Count, 1).End(xlUp).Row)
 とか。

(通りすがり) 2023/04/12(水) 15:44:52


ありがとうございます。20000の箇所に上記を記載してみましたが、]の箇所がコンパイルエラーで不正な文字とでました。わかりますでしょうか。
(ja) 2023/04/12(水) 15:58:14

 R1C1形式は苦手なので、上記のようなマクロ記録のものではなく、設定したい通常のXLOOKUP関数(ワークシートに記述する際のもの)を書いてみてください。

(通りすがり) 2023/04/12(水) 16:27:01


仮にですが、=XLOOKUP(B4:B6,Sheet2!A2:A40,Sheet2!B2:B40) となります。B6を可変の最終行としたいです。また結果を下の最終行までコピーする方法はフィルハンドルでよろしいでしょうか。
(ja) 2023/04/12(水) 16:56:54

 こういうことですか?
 Sub test()
     Dim LastR As Long
     LastR = Cells(Rows.Count, "B").End(xlUp).Row
     Range("A1").Formula2 = "=XLOOKUP(B4:B" & LastR & ",Sheet2!A2:A40,Sheet2!B2:B40)"
 End Sub

 >また結果を下の最終行までコピーする方法はフィルハンドルでよろしいでしょうか。
 XLOOKUPはスピルするので、フィルコピー必要ないです。
(フォーキー) 2023/04/12(水) 17:07:19

コメント返信:

[ 一覧(最新更新順) ]


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