名前付き範囲を使用するときにVLookup
関数を機能させることができません。 をどのように参照しているのかとは関係がありますが、動作する解決策を見つけることができません。VLookup&Named Rangeで変数を設定する
[]、([])、( "")、["" ])......
(以下コードの更新と拡張部分である)
If Transaction_Type = 1 Then
Debug.Print "Transaction Type :"; Transaction_Type
Range("n10").Value = "Income"
Debug.Print "COA # = "; TransactionInfo.Income_COA_Number.Value
COA_Number = TransactionInfo.Income_COA_Number.Value
Debug.Print COA_Number
Range("n12").Value = TransactionInfo.Income_COA_Number.Value
'thought from STACK OVERFLOW
Debug.Print Range("COA_Range").Address()
COA_1 = Application.WorksheetFunction.VLookup(COA_Number, Range("COA_Range"), 2, False)
Debug.Print COA_1
Range("n13").Value = COA_1
「TransactionInfo.Income_COA_Number」とは何ですか? 'ThisWorkbook.Names(" COA_Range ")。RefersToRange'で名前付き範囲を参照することもできます。 – PatricK
これはユーザーフォームから取得された値です。 TransactionInfo.Income_COA_Number.Valueは、残りのマクロ全体で機能します。あなたの "thisworkbook.names ..."は失敗しました –
'Debug.Print Range(" COA_Range ")。Address()'を追加して、範囲が見つかるようにしてください。 –