Ich füge eine Datenvalidierungsliste basierend auf einem Zellenwert hinzu. Wenn der Wert in Zelle B29 = "Text1" ist, fügen Sie die Datenvalidierung in Zelle D29 hinzu. Wenn die Zelle B29 einen anderen Wert hat, muss eine Formel zu Zelle D29 hinzugefügt werden und die Datenvalidierung muss entfernt werden. HierDatenvalidierung basierend auf Zellenwert
ist ein Beispiel für das Makro:
If Range("B29").Value = "Text1" Then
Range("D29").Value = ""
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=INDIRECT(B29)"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
ElseIf Range("B29").Value = "Value1" Then
Range("D29").Formula = "=IF(Sheet2!B9,VLOOKUP(Sheet2!B8,'Team Target Tabel'!C2:E17,2,FALSE),"""")"
Range("D29").Validation.Delete
ElseIf Range("B29").Value = "Value2" Then
Range("D29").Formula = "=IF(Sheet2!B9,VLOOKUP(Sheet2!B8,'Team Target Tabel'!C2:E17,2,FALSE),"""")"
Range("D29").Validation.Delete
ElseIf Range("B29").Value = "Value3" Then
Range("D29").Formula = "=IF(Sheet2!B9,VLOOKUP(Sheet2!B8,'Team Target Tabel'!C2:E17,2,FALSE),"""")"
Range("D29").Validation.Delete
End If
End Sub
Zelle B29 ist auch eine Datenüberprüfungszelle, die 4 Werte aufweist. Wenn der Wert text1 ist, muss Zelle D29 in eine Datenüberprüfungsliste geändert werden, aber ich muss das Makro manuell ausführen, um dies zu tun. Wenn D29 eine Datenüberprüfungsliste ist und ich den Wert in Zelle B29 ändere, muss ich das Makro erneut ausführen (manuell), um es zurück in die Formel zu ändern.
Bitte erklären Sie, wie funktioniert Ihr Makro nicht –
Zelle B29 ist auch eine Datenvalidierungszelle, die 4 Werte hat. Wenn der Wert text1 ist, muss Zelle D29 in eine Datenüberprüfungsliste geändert werden, aber ich muss das Makro manuell ausführen, um dies zu tun. Wenn D29 eine Datenüberprüfungsliste ist und ich den Wert in Zelle B29 ändere, muss ich das Makro erneut ausführen (manuell), um es zurück in die Formel zu ändern. – Miksel