0

以前のリストで提供された内容に基づいて選択リストを作成したいのですが、問題があります。リストの検証を使用していましたが、ファイルを閉じない限り機能していました。このファイルを再度開いた後、リストがクリアされたときにエラーが発生し、データをロードしたくありませんでした。

そこで、コントロールコンボリストを使うことにしたのですが、配列の作成には別の問題があります...

    Sub Rozwiń298_Zmienianie(Target)
    Dim i As Integer
    Dim j As Integer
    Dim k As Integer
    Dim m As Integer
    Dim lista() As Variant
    i = 1
    j = 1
    m = 0

    Do While Sheets("Dane").Cells(i, 14) <> Target.Text
        i = i + 1
    Loop
    j = i
    Do While Sheets("Dane").Cells(j, 14) = Target.Text
        j = j + 1
    Loop
    j = j - 1
    k = j - i + 1
    ReDim lista(k)
    For m = 0 To k
        lista(m) = Sheets("Dane").Cells(i, 15).Text
        i = i + 1
    Next m

    Sheets("Formularz").Shapes.Range(Array("Drop Down 298")).Select
    With Selection
        .List = lista
    End With
End Sub

2つの質問...どういうわけか機能していますが、リストから何かを選択した後、かなり奇妙なエラーが発生します(引数はオプションではありません)-何が間違っていますか?

2番目: このリストから何かを選択するための Worksheet_Change(ByVal Target As Range) 条件を設定し、選択したデータを使用して別の選択リストを作成する方法は?

4

1 に答える 1