Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Probleme mit Objektvariable oder With-Blockvariabl

Probleme mit Objektvariable oder With-Blockvariabl
Gregor
Hallo
Mit der rechten Maustaste starte ich ein Makro, das mit dem Befehl
usrFV_Orte.show eine UserForm öffnet. Beim Öffnen wird folgender Code aktiviert:
Private Sub UserForm_Activate()
Dim n
Dim arrFind()
With Worksheets("FV Orte").Range("a1:z50")
Set c = .Find(Ort, LookIn:=xlValues, SearchOrder:=xlByColumns)
If Not c Is Nothing Then
firstAddress = c.Address
Do
n = n + 1
ReDim Preserve arrFind(1 To 4, 1 To n)
arrFind(1, n) = .Cells(1, c.Column).Value
arrFind(2, n) = .Cells(2, c.Column).Value
arrFind(3, n) = .Cells(3, c.Column).Value & " Meter"
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address  firstAddress
End If
End With
If n = 0 Then Exit Sub
With usrFV_Orte.lstFind
.ColumnCount = n
.List = arrFind
End With
Caption = "         Länge der FV-Orte des Orts " & Ort
End Sub
Die UF schiesse ich mit dem x. Dieser Code funktioniert. Wenn ich aber nachher einen anderen Code aufrufe, erhalte ich die Fehlermeldung 91 beim Befehl
Spalte_InfraKoo = .Rows(1).Find("Infra-Koo P", LookAt:=xlWhole).Column
Diese Spalte ist ausgeblendet. Wenn ich diese zuvor einblende, erscheint der Fehler nicht. Der Fehler erscheint immer erst dann, wenn ich zuvor die obige UF aufrufe, es muss also in diesem Zusammenhang stehen. Datei ist zu gross um hochzuladen. Was läuft da falsch? Wäre wirklich froh, wenn ich diesen komischen Fehler eliminieren kann.
Vielen Dank und Gruss
Gregor

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Probleme mit Objektvariable oder With-Blockvariabl
18.03.2011 10:24:15
ransi
HAllo Gregor
Ich rate mal:
Durch den Aufruf in der Userform setzt du bestimmte Parameter in der Find-Methode.
Die vergisst Excel nicht und nutzt sie beim näxten Aufruf.
Fehlermeldung 91 beim Befehl
Spalte_InfraKoo = .Rows(1).Find("Infra-Koo P", LookAt:=xlWhole).Column

Err 91 heisst hier eigentlich das nichts gefunden wird.
Die Find-Methode hat noch mehrere Parameter.
Ausdruck.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)

Setz mal alle Parameter neu. Auch die After und für SearchDirection.
Evtl. gehts dann.
ransi
Anzeige
AW: Probleme mit Objektvariable oder With-Blockvariabl
18.03.2011 11:24:54
Gregor
Hoi ransi
Vielen Dank. Ich habe Find wie folgt ergänzt, leider ohne Erfolg:
Spalte_InfraKoo = .Rows(1).Find(What:="Infra-Koo P", LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext).Column
Was interessant ist, dass die 2 anderen Find-Funktionen ohne Fehler funktionieren, weil diese Spalten standardmässig eingeblendet sind:
Spalte_Nutzlänge = .Rows(1).Find("Nutzlänge", LookAt:=xlWhole).Column
Spalte_RomaRVIST = .Rows(1).Find("Länge RV IST", LookAt:=xlWhole).Column
Die Spalte Koo-P ist standardmässig ausgeblendet. Wenn ich diese vorher einblende, funktioniert auch diese. Es muss also irgend etwas mit der ausgeblendeten Spalte zu tun haben. Hast du noch eine Idee?
Gruss Gregor
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige