5

ドロップダウンリストを動的に作成する必要があります。これにより、セルに特定のテキストを入力した後、SQLを実行Dropdownし、返された行からを作成します。

イベントは、(スプレッドシート全体ではなく)1つのセルの値にどのように集中しますか?

作成する前に、SQL行の値をスプレッドシートに「貼り付ける」必要がありますDropdownか?VBAでDropdown、スプレッドシートに値を貼り付けずに値を入力し、それらを強調表示して作成することは可能Dropdownですか?

ありがとう

4

1 に答える 1

6

いいえ、ドロップダウンを作成するためにシートに値を貼り付ける必要はありません。この例を参照してください

Option Explicit

Sub Sample()
    Dim dvList As String

    '~~> You can construct this list from your database
    dvList = "Option1, Option2, Option3"

    '~~> Creates the list in Sheet1, A1
    With Sheets("Sheet1").Range("A1").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 Sub
于 2012-06-13T10:12:40.990 に答える