0

データベースで目的の名前をチェックし、その項目をドロップダウンに追加するリストを作成しようとしています。これまでのコードは、名前をチェックするように機能しますが、リスト内の以前のエントリを上書きします。正しいデータが見つかるたびに新しいリスト項目を追加するように変更するにはどうすればよいですか?

While ThisWorkbook.Worksheets("Inventory Database").Range("A" & j).Value <> ""
If ThisWorkbook.Worksheets("Inventory Database").Range("A" & j) = ThisWorkbook.Worksheets("Equipment Availability").Cells(1, i) Then
dvList = ThisWorkbook.Worksheets("Inventory Database").Range("B" & j)

'~~> Creates the list 
With Sheets("Equipment Availability").Cells(2, 2).Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:=dvList
    .IgnoreBlank = True
    .InCellDropdown = True
    .InputTitle = ""
    .ErrorTitle = ""
    .InputMessage = ""
    .ErrorMessage = ""
    .ShowInput = True
    .ShowError = True
End With
End If
j = j + 1
Wend    
4

1 に答える 1

0

名前付き範囲を参照している間は、検証リストを 1 回だけ作成する必要があります。ループごとに名前付き範囲を拡張する (新しい値を追加する) と、検証リストが自動的に更新されます。

于 2015-09-24T14:42:52.140 に答える