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

Laufzeitfehler 1004

Laufzeitfehler 1004
29.12.2016 14:39:27
Michael
Hallo Leute,
ein Frage zu einem nicht verständlichen Vorgang.
innerhalb eines Sub's wird folgende Befehlsfolge ausgeführt.
With Range("C11").Offset(0, iMax)
'Spalte B kopieren
Range("C11:C44").Copy .Cells(1)
'Firmennummer eintragen
.Value = iMax + 1
'Hyperlink anpassen
.Hyperlinks.Add Anchor:=.Cells(1), Address:="",
SubAddress:="'Firma " & iMax + 1 & "'!A1"
'in den kopierten Formeln "Firma 1" durch "Firma imax+1" ersetzen
With Application.Intersect(Range"D12:D16,D18:D22,D25:D38, D40:D44").EntireRow, .EntireColumn)
.Replace What:="Firma 1", Replacement:="Firma " & iMax + 1, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Wenn ich dieses Sub ausführe laufe ich bei With Applicatin.Intersect(Range....)
auf den Laufzeitfehler 1004 -Die Methode 'Range' für das Objekt '_Global' ist fehlgeschlagen. Gehe ich dann im Debugger im Einzelschritt weiter wird die Funktion ordnungsgemäß abgeschlossen.
Wer kann sich das erklären.
Gruß Michael

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 1004
29.12.2016 14:47:08
MB12
Hallo Michael,
ich kann ja schief liegen, aber du hast bei der Range sowohl Row als auch Column drin - evt ein Konflikt
Gruß, Margarete
AW: Laufzeitfehler 1004
29.12.2016 15:12:13
guenni
Hallo Michael,
Denke es gibt ein Problem mit der Range-Syntax.
Möglicherweise sind zur Laufzeit ";" als Trennung der Bereiche erforderlich und im Debugmodus ","
Würde hier sicherheitshalber keine zusammengesetzte Range benutzen.
Gruß,
Günther
AW: Laufzeitfehler 1004
29.12.2016 15:37:40
Michael
Hallo Magarete,
auch wenn ich nur EntireColumn benutze bleibt es bei dem Laufzeitfehler. Wie schon beschrieben läuft es im Einzelschritt im Debugger einwandfrei was die Fehlersuche etwas erschwert.
Gruß Michael
Anzeige
AW: Laufzeitfehler 1004
29.12.2016 15:44:32
Michael
Hallo Jochen,
gut erkannt, ist aber nur beim einfügen in den Beitrag verloren gegangen.
Gruß Michael
AW: Laufzeitfehler 1004
29.12.2016 15:17:50
JoWE
Hallo,
fehlt da nicht eine Klammer "(" hinter Range und vor "D12...
With Application.Intersect(Range("D12:D16,D18:D22,D25:D38, D40:D44").EntireRow, .EntireColumn)
Gruß
Jochen
AW: Laufzeitfehler 1004
29.12.2016 17:07:57
Gerd
Hallo Michael,
ja, das Geschreibsel war nicht ganz in Ordnung u. geht kürzer.
Aber das Hyperlink-Einfügen passt so nicht in diese Prozedur dazu.
Frage mich nicht weshalb.

Dim imax As Long
Sub aaa()
imax = 2
With Range("C11").Offset(0, imax)
' kopieren
Range("C11:C44").Copy .Cells(1)
'Firmennummer eintragen
.Value = imax + 1
End With
'in den kopierten Formeln "Firma 1" durch "Firma imax+1" ersetzen
With Range("C12:C16,C18:C22,C25:C38,C40:C44").Offset(0, imax).Cells
.Replace What:="Firma 1", Replacement:="Firma " & imax + 1, _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
End With
Call bbb
End Sub

Sub bbb()
'Hyperlink einfügen
With Range("C11").Offset(0, imax)
.Hyperlinks.Add Anchor:=.Cells, Address:="", SubAddress:="'Firma " & imax + 1 & "'!A1"
End With
End Sub
Gruß Gerd
Anzeige
AW: Laufzeitfehler 1004
30.12.2016 11:43:39
Michael
Hallo Gerd,
vielen Dank das du dich mit diesem Problem beschäftigst.
Dein Lösungsansatz scheint erst ein mal logisch. Leider funktioniert
der .Replace bei deinem Lösungsansatz nicht. Da bei With Range("...
derselbe Laufzeitfehler 1004 kommt.
Gruß Michael
AW: Range- oder Replace - Problem
30.12.2016 13:43:17
Gerd
Hallo Michael,
bei mir läuft es so. Habe eine andere xlVersion u. kenne deine Datei nicht.
Gruß Gerd
AW: Laufzeitfehler 1004
30.12.2016 17:23:57
Michael
Hi,
versuch mal das
Sub aaa()
Dim imax As Long
Dim c As Range
imax = 2
Set c = Cells(11, 3 + imax)
Range("C11:C44").Copy c
c = imax + 1
Range("C12:C16,C18:C22,C25:C38,C40:C44").Offset(0, imax) _
.Replace What:="Firma 1", Replacement:="Firma " & imax + 1, _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
c.Hyperlinks.Add Anchor:=c, Address:="", _
SubAddress:="'Firma " & imax + 1 & "'!A1"
End Sub
Schöne Grüße,
Michael
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige