0

VBA を使い始めてまだ 2 週間ほどなので、呼び方が間違っていたらすみません。とにかく、私はコンボボックスに問題がありました。ボックスにはアイテムがいっぱいで、それらを見て、スクロールしてクリックすることができます。ただし、コンボボックスの値をチェックするボタンをクリックすると、その中で選択したアイテムに関係なく、値は常にnullになり、キャッチされます

If IsNull(ToolReportBox.Value) = True Then
    MsgBox "Please Enter a tool"
    Exit Sub
End If

そこにこのチェックがなく、次のような文字列に値を割り当てようとすると

Dim toolName_str As String
    toolName_str = ToolReportBox.Value

プログラムの後半で、「実行時エラー '94': Null の無効な使用」というエラーがスローされます。

リストボックスにする以外の提案はありますか? 前もって感謝します。

4

2 に答える 2

2

データを含む列に対して、[データ] タブの [バインドされた列] プロパティが設定されていることを確認する必要があります。たとえば、1 に設定すると、RowSource が参照され、そこにリストされている最初の列から値が取得されます。列にデータが含まれていることを確認してください。

于 2012-08-09T18:49:21.270 に答える
0

コンボボックスの値を確認してください - forms!frmName!ToolReportBox.column(0)(コンボボックスには多くの列がありますが、1、2、3 に増やします) - これは、表示されている値が実際に返される値ではない場合に備えてです。

これは通常ListWidth、コンボ ボックスのプロパティにゼロが含まれている場合に発生します。

于 2012-08-09T18:49:36.933 に答える