ExcelマクロでVLOOKを実行したい
同一シートにある「全体」の表から必要な項目をVLookで抜き出したくて
下記のマクロを作成しました。
「Sheet1」のA列(A2以下)には検索値(数字6ケタ)を入れています。
A2の検索値でヒットした値はB2・C2に入りましたが、A3以下の検索値は
スルーされてしまいます。どこを直したら良いのか、ご教授ください。
よろしくお願いします。
-----------------------------------------------------------------------
Sub 検索して値を取得する()
Dim 範囲 As Range
Dim 検索値, i As Long
Dim 出荷日 As Date
Dim 商品名 As String
Set 範囲 = Worksheets("全体").Range("E7:HG1000")
Set 検索値 = Worksheets("Sheet1").Cells(i + 2, 1)
If 検索値.Value <> "" Then
商品名 = Application.WorksheetFunction.VLookup(検索値, 範囲, 2, False)
出荷日 = Application.WorksheetFunction.VLookup(検索値, 範囲, 160, False)
Cells(i + 2, 2).Value = 商品名
Cells(i + 2, 3).Value = 出荷日
i = i + 1
End If
End Sub
No.2ベストアンサー
- 回答日時:
#1です。
Set 検索値 = Worksheets("Sheet1").Cells(i + 2, 1)
If 検索値.Value <> "" Then
商品名 = Application.WorksheetFunction.VLookup(検索値, 範囲, 2, False)
出荷日 = Application.WorksheetFunction.VLookup(検索値, 範囲, 160, False)
Cells(i + 2, 2).Value = 商品名
Cells(i + 2, 3).Value = 出荷日
i = i + 1
End If
を
Do
Set 検索値 = Worksheets("Sheet1").Cells(i + 2, 1)
If 検索値.Value "" Then Exit Do
商品名 = Application.WorksheetFunction.VLookup(検索値, 範囲, 2, False)
出荷日 = Application.WorksheetFunction.VLookup(検索値, 範囲, 160, False)
Cells(i + 2, 2).Value = 商品名
Cells(i + 2, 3).Value = 出荷日
i = i + 1
Loop
にしたらどうなる?
No.1
- 回答日時:
「スルーされてしまいます」
いやいや、スルーじゃなくて元々1回しか走るように出来ていない。
次の検索値をセットして、ループさせないとね。
(whileで回して、if文でbreakさせてもいいし。)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Visual Basic(VBA) シフト表のコマで「ブロック」されている前の時間の「出」を同一列の「休」と入れ替えたいがふぇきません。 2 2023/08/02 18:49
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
- Visual Basic(VBA) Sheet1のA列にコードB列にメアド、Sheet2のB列にコード一覧とD列にメアド一覧があり、Sh 3 2022/10/19 11:57
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) エクセルVBAのコードで質問です。 下のコードはJ16の文字列をB3を起点とする範囲から探して、見つ 5 2023/04/07 11:07
- Visual Basic(VBA) ユーザーフォームの表示を追加したい 2 2023/03/26 23:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
タボス会議、グレートリセット...
-
ネットで晒されてないか
-
このサイトで「ご参考までに」...
-
コーパスの使い方
-
エクセル_検索機能で、検索場所...
-
メリロートって本当にむくみが...
-
効果音のMIDIや、暗いサイトに...
-
山口県厚狭郡楠町の市外局番
-
ExcelマクロでVLOOKを実行したい
-
Yahooで笑ってはいけない地球防...
-
ポッカキットって知ってますか?
-
Access 複数条件のフィルタ
-
カークリゴ?カーグリコ?オオ...
-
S.FからL.A.まで
-
P902(DoCoMo)での電話帳検索に...
-
muchosucko
-
ホットペッパービューティーっ...
-
ポッカキットって危ないサイト...
-
金属材料 CRES って?
-
サイト名ってなんですか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ポッカキットって危ないサイト...
-
【医学】精神科医に質問です。 ...
-
ポッカキットって知ってますか?
-
ホットペッパービューティーっ...
-
ゴグレクスってなんですか?
-
muchosucko
-
コーパスの使い方
-
ネットで晒されてないか
-
金属材料 CRES って?
-
どうやったら強迫性障害の確認...
-
エクセル_検索機能で、検索場所...
-
Accessの検索で「~以外」
-
英語キーワード検索の入力方法
-
Googleカレンダーを一般公開し...
-
Googleでpornhub検索しても出て...
-
SIAとSAJの違い
-
@メル友 というサイトが突然繋...
-
ゴルゴ13って、失敗したこと...
-
資産運用用語
-
このサイトで「ご参考までに」...
おすすめ情報