Fehlermeldung bei erneutem Einlesen
#1
Hallo zusammen,
ich habe eine Excel, in die Daten übertragen werden und auch dabei gleichzeitig DropDown-Felder formatiert werden. Dabei werden auch mehrere Daten eingelesen, sodass ich eine Fehlermeldung bei erneutem Einlesen aufgrund der DropDown-Felder bekomme. Sprich wenn über die als DropDown-Felder formatierten Zellen wieder ein DropDown-Feld erzeugt werden soll, tritt der Fehler auf.

Code:
Dim Zeile As Integer

Set book1 = ActiveWorkbook

For Zeile = 3 To 1000

With book1.Worksheets("Gehaltsdaten").Cells(Zeile, 16).Validation
   .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17"
   .ErrorMessage = "Geben Sie bitte eine Zahl zwischen 1 und 17 ein!"
End With

With book1.Worksheets("Gehaltsdaten").Cells(Zeile, 20).Validation
   .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:="A,B,C,D,E"
   .ErrorMessage = "Geben Sie bitte eine Bewertung von A bis E ein!"
End With

With book1.Worksheets("Gehaltsdaten").Cells(Zeile, 21).Validation
   .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:="A,B,C,D,E"
   .ErrorMessage = "Geben Sie bitte eine Bewertung von A bis E ein!"
End With

With book1.Worksheets("Gehaltsdaten").Cells(Zeile, 22).Validation
   .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:="A,B,C,D,E"
   .ErrorMessage = "Geben Sie bitte eine Bewertung von A bis E ein!"
End With

With book1.Worksheets("Gehaltsdaten").Cells(Zeile, 23).Validation
   .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:="A,B,C,D,E"
   .ErrorMessage = "Geben Sie bitte eine Bewertung von A bis E ein!"
End With

With book1.Worksheets("Gehaltsdaten").Cells(Zeile, 24).Validation
   .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:="A,B,C,D,E"
   .ErrorMessage = "Geben Sie bitte eine Bewertung von A bis E ein!"
End With

With book1.Worksheets("Gehaltsdaten").Cells(Zeile, 25).Validation
   .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:="A,B,C,D,E"
   .ErrorMessage = "Geben Sie bitte eine Bewertung von A bis E ein!"
End With

Next Zeile

Wie kann ich dem Code sagen, dass wenn diese Felder bereits formatiert sind, diese nicht wieder formatiert werden sollen, sodass die Fehlermeldung nicht mehr auftritt?
Danke :)
Top
#2
Hallo, :19:

nimm die "For - Next - Schleife" ganz raus und schreibe: :21:

Code:
With book1.Worksheets("Gehaltsdaten").Range("P3:P1000").Validation
    .Delete
    .Add Type:=xlValidateList, Operator:=xlBetween, Formula1:="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17"
    .ErrorMessage = "Geben Sie bitte eine Zahl zwischen 1 und 17 ein!"
End With
Top
#3
Hallo Case, 
ja klar stimmt, vielen Dank :)

Da habe ich wohl auf dem Schlauch gestanden
Top
#4
:05: :05:
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste