Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1136to1140
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

Fehler bei Datengültigkeit

Fehler bei Datengültigkeit
Steffen
Guten Morgen Zusammen,
Ich erstellen eine Datengültigkeit per VBA mit folgenden Code:
Dim LoLetzte As Long
LoLetzte = Workbooks(strWksName).Sheets(1).Cells.Find(What:="*", after:=Range("A1"), _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Workbooks(strWksName).Sheets(1).Range("K:K").Validation.Delete
With Workbooks(strWksName).Sheets(1).Range("K11:K" & LoLetzte + 10).Validation
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=Prio"
.IgnoreBlank = True
.InCellDropdown = True
.ShowInput = True
.ShowError = True
End With
Dies ist nur ein Script innerhalb des Modules,wenn ich den Code laufen lasse funktioniert er auch jedoch wenn sich in dem Sheet(1) etwas ändert ggf "LoLetzte" gibt mir Excel einen "Anwendungs- Objekt definierten"Fehler an der Zeile "Add Type aus.
Wenn ich nun eine Zelle im Arbeitsblatt anklicke und danach wieder in die Code Zeile "springe" kann Ich mit F8 den Code ohne weitere Probleme ausführen?!
Hat jemand einen Tipp für mich?
Danke und Gruß
Steffen

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Fehler bei Datengültigkeit
08.02.2010 10:34:22
Björn
Hallo,
schreib bitte noch, was du erreichen willst.
Was für eine Gültigkeit soll für welchen Bereich festgelegt werden?
Gruß
Björn B.
AW: Fehler bei Datengültigkeit
08.02.2010 10:39:27
Steffen
Hallo Björn
Es ist eine Auswahlliste indem der Benutzer nur die Wahl zwischen 2 vorgegebenen Eintragungen hat.
Grüße
Steffen
AW: Fehler bei Datengültigkeit
08.02.2010 10:52:06
Björn
Hallo,
Manchmal funktioniert es nicht, wenn man 2 Fragen in einer stellt, also versuche ich es noch mal:
1. ) Was für eine Gültigkeit soll
2. ) für welchen Bereich festgelegt werden?
Nun beantwortest du Frage 1 nur zum Teil und Frage 2 gar nicht.
Du schreibst was von 2 Werten. Welche Werte, wie gibst du das an?
Für welchen Bereich?
Dein Fehler kommt genau in der Zeile, in der Du die Gültigkeit einfügst.
Um zu prüfen, was du falsch gemacht hast, müssen wir mal wissen, wie es richtig sein soll.
Gruß
Björn B.
Anzeige
AW: Fehler bei Datengültigkeit
08.02.2010 17:03:15
Steffen
Hallo Björn,
1)Name "Prio" bezug =Tabelle2!$D$2:$D$3
2)Sheets(1).Range("K11:K" & LoLetzte + 10)
ich hoffe ich konnte dich jetzt mit den nötigen Informationen versorgen..
grüße Steffen
bei mir funktioniert es...
09.02.2010 07:58:18
Björn
Hallo Steffen,
also, ich habe den Code von Dir nur so angepasst, dass er alleinstehend läuft und bei mir kommt dann kein Fehler. Ich habe nur die Variablen definiert und in der Mappe den Namen "Prio" entsprechend Deinen Angaben definiert.
So sieht mein Code jetzt aus:
Sub test()
Dim LoLetzte As Long
Dim strWksName As String
strWksName = ThisWorkbook.Name
LoLetzte = Workbooks(strWksName).Sheets(1).Cells.Find(What:="*", after:=Range("A1"), _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Workbooks(strWksName).Sheets(1).Range("K:K").Validation.Delete
With Workbooks(strWksName).Sheets(1).Range("K11:K" & LoLetzte + 10).Validation
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=Prio"
.IgnoreBlank = True
.InCellDropdown = True
.ShowInput = True
.ShowError = True
End With
End Sub
Diesen Code habe ich in Tabelle1 stehen und führe in einfach mit F5 aus. Läuft ohne Fehler und die Gültigkeit wird auch richtig gesetzt.
So, nun teste bitte mal diesen Code bei Dir. Wenn er funktioniert, dann stimmt was in deinem Code nicht (in dem Teil, den Du nicht gepostet hast...).
Wenn mein Code auch nicht funktioniert, dann stimmt was in Deiner MAppe nicht, dann bitte noch mal in einer neuen leeren Mappe testen und dann vergleichen.
Lass Dir mal LoLetzte ausgeben, vielleicht stimmt Dein Bereich auch nicht, oder vielleicht hast Du den Namen "Prio" falsch vergeben, Blattschutz falsch gesetzt, Variablen falsch definiert, ...
Das kann alles mögliche sein.
Hoffe, das hilft Dir.
Gruß
Björn B.
Anzeige
AW: bei mir funktioniert es...
09.02.2010 11:46:11
Steffen
Hallo Björn,
erst einmal Danke fürs Reinschauen!
Was ich raus gefunden habe ist:
durch Makros davor werden Zeilen eingefügt bzw gelöscht.Nur wenn dieser Fall eintritt kam der Debugger bei der Add codezeile.
Ich bin das ganze jetzt so umgangen,dass ich das Script ans Ende des kompletten gesamt Scripts gestellt habe u siehe da- nu geht es.
Allerdings weiss ich nicht warum :-( wahrscheinlich haben sie die einzel Scipts in diesem Fall "nicht vertragen"?!
zu deinem Nachtrag:
LoLetzte hab ich mir ausgeben lassen ,Variablen verglichen Namen geprüft alles OK.
Selbst bei gleichbleibenden Wert von LoLetze kam der Fehler...
Viele Grüße
Steffen
Anzeige
AW: bei mir funktioniert es...
09.02.2010 12:00:11
Björn
Hallo Steffen,
kann mir eigentlich nicht vorstellen, dass das was mit gelöschten zeilen zu tun hat...
Außer du hast dadurch den vergeben Namen geändert oder hast verbundene Zellen...
Aber ist ja auch egal. Man muss ja nicht alles verstehen, Hauptsache es funktioniert.
Gruß
Björn B.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige