アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excel VABについて
下記記述が『SubまたはFunctionが定義されていません』とエラーメッセージが表示されます。
WorksheetFunctionはIndex、Matchを一緒に使えないのでしょうか?また一緒に使えない場合どのようにしたら良いか教えて頂けると幸いです。宜しくお願い致します。

txtPrdCD = WorksheetFunction.Index(Worksheets("商品マスタ").Range("E5:E31"), Match(cmbPrd, Worksheets("商品マスタ").Range("D5:D31"), 0), 1)

------------------------------
※下記IndexとMatchをそれぞれ実行は可能でした

WorksheetFunction.Index(Worksheets("商品マスタ").Range("E5:E31"),5, 1)

WorksheetFunction. Match(cmbPrd, Worksheets("商品マスタ").Range("D5:D31"), 0)

A 回答 (3件)

こんばんは。



Matchに、WorksheetFunction が抜けているからでは?
下記で、デバッグのコンパイルは通りました。

With WorksheetFunction
txtPrdCD = .Index(Worksheets("商品マスタ").Range("E5:E31"), .Match(cmbprd, Worksheets("商品マスタ").Range("D5:D31"), 0), 1)
End With
    • good
    • 1
この回答へのお礼

助かりました

ありがとうございます。IndexとMatchそれぞれに必要なのですね。With使ったら解決しました!

お礼日時:2022/01/20 00:49

こんばんは


Range("E5:E31"), Match(cmbPrd,
このMatchはWorksheetFunctionとして扱われません

txtPrdCD = WorksheetFunction.Index(Worksheets("商品マスタ").Range("E5:E31"), WorksheetFunction.Match(cmbPrd, Worksheets("商品マスタ").Range("D5:D31"), 0), 1)

とか

With WorksheetFunction
txtPrdCD = .Index(Worksheets("商品マスタ").Range("E5:E31"), .Match(cmbPrd, Worksheets("商品マスタ").Range("D5:D31"), 0), 1)
End With

とか・・ですね
    • good
    • 3
この回答へのお礼

助かりました

ありがとうございます。WorksheetFunctionはそれぞれに記述しないといけないのですね。With使ったらできました!

お礼日時:2022/01/20 00:52

こんばんは



多分、
> Match(cmbPrd, Works~~
を評価しようとして、ご提示のエラーになっているものと推測します。

 WorksheetFunction.Match
にすれば解釈されるのでは?
    • good
    • 3
この回答へのお礼

ありがとうございます。IndexとMatchそれぞれにWorksheetFunctionが必要なのですね。

お礼日時:2022/01/20 00:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています