Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
316to320
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
316to320
316to320
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Variablen-namen,Laufzeitfehler 1004

Variablen-namen,Laufzeitfehler 1004
07.10.2003 14:38:36
Peppi
Hallo,

ich frage über eine Inputbox einen Text ab, anch dem eine Arbeitsmappe durchsucht werden soll. Wenn eine Übereinstimmung gefunden wurde, soll ein Arbeitblatt erstellt werden, welches den gleichen Namen wie der suchbegrifft hat. Dann soll gefragt werden, ob weiter gesucht werden soll. Bis zur Ersellung des Arbeitsblattes läuft es auch, nur dann bekomme ich die Fehler meldung:

Laufzeitfehler 1004

Kann einem Blatt nicht den Gleichen Namen geben wie einem anderen Blatt, einer Objektbibliothek oder einer Arbeitsmnappe, auf die Visual Basic bezug nimmt.

Den Quelltext, wie ich ihn bisher habe, habe ich unten mal angehängt. Würde mich freuen, wenn jemand Rat weiß.

Vielen Dank, Gruß
Peppi



Private Sub Suche(strSuchtext As String)
Dim SuchKatalogblattName As String
Dim objBlatt As Worksheet
Dim objSuchKatalogblatt As Worksheet
Dim objZelle As Range
Dim objZeile As Range
Dim strErsteFundstelle As String
Dim intButton As Integer
Dim objForm As UserForm
Dim strSuchtext2 As String
'wir kommen hier von der Public Sub Suchen() aus hin
'Prüfen, ob SuchKatalogblatt bereits existiert
Set objSuchKatalogblatt = GetWorksheet(strSuchtext)
'Wenn SuchKatalogblatt nicht existiert, dann...
'If 1
If objSuchKatalogblatt Is Nothing Then
'Alle Blätter durchlaufen
For Each objBlatt In ActiveWorkbook.Worksheets
'Verwendeten Bereich jedes Blatts durchsuchen
With objBlatt.UsedRange
'Suchfunktion aufrufen
Set objZelle = .Find(What:=strSuchtext, LookIn:=xlValues)
'Wenn erster Treffer, dann...
'If 2
If Not objZelle Is Nothing Then
'... Fundstelle merken
strErsteFundstelle = objBlatt.Name & "!" & objZelle.Address
'Neues Katalogblatt anlegen
Set objSuchKatalogblatt = Worksheets.Add(After:=Worksheets(Worksheets.Count))
'Suchtext bildet Namen des SuchKatalogblattes
objSuchKatalogblatt.Name = strSuchtext
Do
'Blatt mit Fundstelle aktivieren
objBlatt.Activate
'Fundstelle markieren
objZelle.Select
'Anwender fragen, ob Suche fortgesetzt werden soll
intButton = MsgBox("Weiter suchen?", vbQuestion + vbYesNo, APP_NAME)
'Wenn Antwort nicht 'Ja' lautet, dann...
'If 010
If intButton <> vbYes Then
'Fragen, ob das Suchkatalogblatt geöffnet werden soll
intButton = MsgBox("Das Suchkatalogblatt öffnen?22", vbQuestion + vbYesNo, APP_NAME)
'Wenn die Antwort nicht 'Ja' lautet, dann...
'If 016
If intButton <> vbYes Then
'Infofenster mit "Suche beendet!" öffnen und...
MsgBox "Suche beendet3!", vbInformation, APP_NAME
'...Makro beenden
Exit Sub
'If 016
Else
'Suchkatalogblatt aktivieren
objSuchKatalogblatt.Activate
'Makro beenden
Exit Sub
'If 010
End If
'If 016
End If
'Nach nächstem Vorkommen suchen
Set objZelle = .FindNext(objZelle)
'Schleife wiederholen solange weitere Fundstellen auftauchen und erste Fundstelle noch nicht erreicht
Loop While Not objZelle Is Nothing And objBlatt.Name & "!" & objZelle.Address <> strErsteFundstelle
'If 2
End If
End With
Next
MsgBox "Keine weiteren Fundstellen.", vbInformation, APP_NAME
'Fragen, ob das Suchkatalogblatt geöffnet werden soll
intButton = MsgBox("Das Suchkatalogblatt öffnen?33", vbQuestion + vbYesNo, APP_NAME)
'Wenn die Antwort nicht 'Ja' lautet, dann...
'If 015
If intButton <> vbYes Then
'Infofenster mit "Suche beendet!" öffnen und...
MsgBox "Suche beendet3!", vbInformation, APP_NAME
'...Makro beenden
Exit Sub
'If 015
Else
'Suchkatalogblatt aktivieren
objSuchKatalogblatt.Activate
Exit Sub
'If 015
End If
'If 1
End If
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Variablen-namen,Laufzeitfehler 1004
11.10.2003 01:53:29
OliveR
Hallo Peppi,

könnte es sein, dass das Macro folgendes versucht?
1. Es findet einen Eintrag
2. Es legt einen neuen Sheet an
3. Es sucht dann weiter
4. Es versucht einen neuen Sheet anzulegen (aber mit dem selben Namen wie in 2.)
5. bricht ab

Denke es wäre einfacher, den Fehler zu finden, wenn man den Excelfile hätte.

Gruß
OliveR
AW: Variablen-namen,Laufzeitfehler 1004
11.10.2003 16:54:56
Peppi
Hallo,

vielen Dank erst mal. Ist schon richtig wie du vermutet hast. Ich habe es jetzt bereits anders gelöst. Habe ein paar andere Dinge anders gelöst, als ich erst angedacht hatte und dadurch hat sich dieses Problem erstmal erübrigt.

Trotzdem vielen Dank.
Gruß
Sven
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige