Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1108to1112
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

GÜltigkeit mit Variable in VBA

GÜltigkeit mit Variable in VBA
Andre
Hallo,
ich habe ein Anwendungs oder Referenzobjektiven Fehler. Bei folgender Formel. Kann mir da jemand helfen?
Dim strFormel As String
For v = nTabelle1ZeileSTART To Zeilen
strFormel = "=INDIREKT($O" & v & ")"
With Cells(v, nTabelle1SpalteFBFunktion).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strFormel
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
Next v
AW: GÜltigkeit mit Variable in VBA
09.10.2009 10:50:11
Helmut
Hallo Andre
wahrscheinlich steht in $O&v kein für indirekt auswertbarer Bezug.
Gruß
Helmut
AW: GÜltigkeit mit Variable in VBA
09.10.2009 10:57:00
Helmut
und es muß heißen indirect, i.e. englische Schreibweise
AW: Gültigkeit mit Variable in VBA
09.10.2009 11:02:49
Andre
Das mit dem Indirekt müsste meines wissens an den unterschiedlichen Excel Versionen liegen. Aber dann würde es ja nicht funktionieren, wenn ich es zu Fuß eingebe
AW: Gültigkeit mit Variable in VBA
09.10.2009 11:41:42
Helmut
Das hat nichts mit der Excel Version zu tun. Bei Makro aufzeichnen werden die lokalen Formelbezeichnungen verwendet. Diese muß man aber anschließend in die Englischen transformieren. Soweit jedenfalls meine Erfahrungen.
AW: Gültigkeit mit Variable in VBA
09.10.2009 12:09:24
Andre
For v = nTabelle1ZeileSTART To Zeilen
mystring = "=Indirect($O" & v & ")"
Range(Cells(nTabelle1ZeileSTART, nTabelle1SpalteFBFunktion), _
Cells(Zeilen, nTabelle1SpalteFBFunktion)).Validation.Delete
With Range(Cells(nTabelle1ZeileSTART, nTabelle1SpalteFBFunktion), _
Cells(Zeilen, nTabelle1SpalteFBFunktion)).Validation
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=mystring
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
Next v
Range(Cells(Zeilen + 1, nTabelle1SpalteFBFunktion),_
Cells(65536, Tabelle1SpalteFBFunktion)).Validation.Delete
Dennoch meckert er wenn ich es so mache^^
Anzeige
AW: Gültigkeit mit Variable in VBA
09.10.2009 13:15:55
Andre
Hmm wenn man in deinem Programm aber das löschen vor die Schleife zieht, dann habe ich das Problem erneut.
AW: Gültigkeit mit Variable in VBA
09.10.2009 13:40:17
Andre
Ich hab das mal in einem Programm dargestellt. was ich vor habe. Damit das dnan vielleicht ein bisschen klarer wird.
https://www.herber.de/bbs/user/64989.xls
AW: Gültigkeit mit Variable in VBA
09.10.2009 14:05:19
Helmut
Das kann aber nicht alles sein.
Fehlerquellen im Beispiel:
- die Berechnung für mystring muß in die Schleife
- wie schon angemerkt steht in $O... kein für indirect verwertbarer Ausdruck, z.b. a1
- möglicherweise versuchst Du in der Schleife an einer Stelle eine Überprüfung anzulegen, wo schon eine existiert.
Ansonsten habe ich es ans laufen bekommen. https://www.herber.de/bbs/user/64990.xls
Gruß
Helmut
Anzeige
AW: GÜltigkeit mit Variable in VBA
09.10.2009 10:59:33
Andre
Nee das ist es leider nicht. Per Hand läuft es ja auch wunderbar.
Aber ich habe bei ner anderen Formel auch den gleichen Fehler:
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:= _
"=WENN($AS$1=""Siemens"";KS;WENN($AS$1=""Moeller"";KM;""""))"

AW: GÜltigkeit mit Variable in VBA
09.10.2009 11:15:29
Helmut
was ist KM bzw. KS?
AW: GÜltigkeit mit Variable in VBA
09.10.2009 11:26:42
Andre
Das sind in meinem Fall definierte Namen
AW: GÜltigkeit mit Variable in VBA
09.10.2009 11:37:11
Andre
Frage ist noch offen
Irgendwie spinnt das Forum heute
AW: GÜltigkeit mit Variable in VBA
09.10.2009 11:26:49
Andre
Das sind in meinem Fall definierte Namen
AW: GÜltigkeit mit Variable in VBA
09.10.2009 11:26:25
Helmut
Unter der Annahme, dass KM und KS named areas sind, läuft es so
Selection.Validation.Delete
mystring = "=if($AS$1=""Siemens"",KS,if($AS$1=""Moeller"",KM,""""))"
With Selection.Validation
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:= _
mystring
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Anzeige
AW: GÜltigkeit mit Variable in VBA
09.10.2009 12:11:56
Andre
das läuft nun danke :D

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige