条件付きExcelドロップダウン


0

私は自分の問題に対する解決策を見つけることができずにしばらくの間探しました。 間接関数を介してドロップダウンリストで使用される値の一覧を含むtbl_lovという名前のテーブルがあります。 INDIRECT( "tbl_lov [ProjNR]")

プロジェクトが行き来するにつれて、私は、TrueまたはFalseの値を保持するactiveという名前のtbl_lovの列を持っています。それが偽であるならば、私はこの値がドロップダウンに示されることを望まない。残念ながら、私はまだこれを直接行う方法を考え出していません。

回答:


0

それが彼の関数だけを使っても些細なことではないように思われるので、私がしたのはマクロを使うことでした(私は避けたいと思いました)。

Dim all_lov As Variant
Dim row_nr As Integer

Sub Button1_Click()
    Worksheets("LoV").Range("I:N").Delete
    row_nr = 3
    all_lov = Worksheets("LoV").ListObjects("tbl_lov").DataBodyRange.Value
    Worksheets("LoV").Range("B3:G3").Copy Worksheets("LoV").Range("I3")
    For i = 1 To UBound(all_lov)
        If all_lov(i, 6) = True Then
            row_nr = row_nr + 1
            Worksheets("LoV").Range("B" & (3 + i) & ":G" & (3 + i)).Copy Worksheets("LoV").Range("I" & row_nr)
        End If
    Next i
    Worksheets("Lov").ListObjects.Add(SourceType:=xlSrcRange, Source:=Worksheets("LoV").Range("I3:N" & row_nr), xlListObjectHasHeaders:=xlYes, tablestyleName:="TableStyleDark3").Name = "tbl_lovActive"
End Sub

これは私の既存のテーブルを繰り返し処理し、アクティブなプロジェクトだけを新しい範囲にコピーします。データ検証は新しいテーブルを指します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.