複数シート(範囲)を指定できるVLOOKUP関数をユーザー定義で作りたいと思ってます。下記のコードではうまく動かないので教えてください。
Function VLOOKUPM(検索値 As Variant, 対象シート As String, 対象セル As Range, 列番号 As Integer) As Variant
Dim i As Integer
Dim r As Range
Dim sh As Variant
Application.Volatile
sh = Split(対象シート, ",")
For i = 0 To UBound(sh)
Set r = Sheets(sh(i)).Range(対象セル)
If 検索値 = r Then
VLOOKUPM = r.Offset(0, 列番号)
Exit Function
End If
Next
End Function
No.1ベストアンサー
- 回答日時:
Function VLOOKUPM(検索値 As Variant, 対象シート As String, 対象セル As Range, 列番号 As Integer) As Variant
Dim i As Integer
Dim r As Range
Dim sh As Variant
Application.Volatile
sh = Split(対象シート, ",")
For i = 0 To UBound(sh)
Set r = Sheets(sh(i)).Range(対象セル.Address)
If WorksheetFunction.CountIf(r.Resize(, 1), 検索値) > 0 Then
VLOOKUPM = WorksheetFunction.VLookup(検索値, r, 列番号, False)
Exit Function
End If
Next
End Function
セルには以下の様にいれます。
(カンマの混ざったシート名だと出来ませんがいいのでしょうか?)
=VLOOKUPM(A1,"Sheet1,Sheet2",B1:C10,2)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたい 6 2023/01/23 12:00
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) Sheet1のA列にコードB列にメアド、Sheet2のB列にコード一覧とD列にメアド一覧があり、Sh 3 2022/10/19 11:57
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
日付が未入力の際はゼロか、空...
-
エクセルで1月0日と表示される!!
-
エクセルで条件に一致したセル...
-
Rangeメソッドは失敗しました。...
-
(Excel)あるセルに文字を入力...
-
複数シートの同じセル内容を1シ...
-
別シートのセルを絶対参照にする
-
Excelシートの保護時にデータの...
-
エクセルの文字
-
Excelにて、カタカナだけのセル...
-
Excelで複数シートの選択セルを...
-
エクセルで20万行あるシート...
-
エクセルで、加筆修正したセル...
-
エクセルのルビがついたセルを...
-
エクセルで別シートからの最大...
-
シート参照で変数を使いたい(EX...
-
EXCELマクロで、シート間でのコ...
-
Aというブックの1というシート...
-
excelでハイパーリンクになって...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
日付が未入力の際はゼロか、空...
-
エクセルで条件に一致したセル...
-
エクセルで1月0日と表示される!!
-
(Excel)あるセルに文字を入力...
-
別シートのセルを絶対参照にする
-
Rangeメソッドは失敗しました。...
-
Excelシートの保護時にデータの...
-
複数シートの同じセル内容を1シ...
-
エクセルで、加筆修正したセル...
-
シート参照で変数を使いたい(EX...
-
エクセルで複写のように自動入...
-
Excelで複数シートの選択セルを...
-
INDIRECTを使わず excelで複数...
-
ExcelでTODAY関数を更新させな...
-
式の説明をお願いします。
-
excelでハイパーリンクになって...
-
エクセルのルビがついたセルを...
-
Excelでスクロールすると文字が...
-
エクセル ハイパーリンクで画像...
おすすめ情報