Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1364to1368
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
11.06.2014 13:49:10
Barbara
Hallo zusammen,
kann mir jemand sagen, warum ich hier einen Laufzeitfehler 1004 bekomme? Es soll eigentlich nur eine Leerzeile eingefügt werden, die dieselbe Formatierung und Formeln hat wie die Zeile A6:O6. Das ganze soll nur geschehen, wenn die ganze Zeile, unter der die neue Zeile eingefügt wird, markiert ist, sonst MsgBox!
Das Makro funktioniert übrigens, nur wird immer dieser blöde Laufzeitfehler angezeigt :(
Option Explicit
Sub MitarbeiterEinfügen()
Const strAnfang As String = "A"
Const strEnde As String = "O"
Dim sRow As String
Dim rngD As Range
Dim rngC As Range
sRow = Right(Selection.Rows(1).Address, 5)
While (Val(sRow) = 0)
sRow = Right(sRow, Len(sRow) - 1)
Wend
If ActiveSheet.Rows(Val(sRow)).Cells.Count  Selection.Cells.Count Then
MsgBox "Bitte komplette Zeile markieren!"
End If
If ActiveSheet.Rows(Val(sRow)).Cells.Count = Selection.Cells.Count Then
Rows(Selection.Row + Selection.Rows.Count).Insert Shift:=xlDown
End If
Set rngD = Range("A6:O6")
Set rngC = Range(Selection.Offset(1, 1), Selection.Offset(1, Asc(strEnde) - Asc(strAnfang)))
rngD.Copy Destination:=rngC
rngD.Copy
rngD = rngC
rngC.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
rngC.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 1004
11.06.2014 14:15:13
Daniel
Hi
sieht etwas aufwendig und umständlich aus.
probier mal das:
Sub test()
If Selection.Columns.Count 
vielleicht gehts auch ganz ohne Code, wenn du den Zellbereich als "Tabelle" formatierst. (Einfügen - Tabellen - Tabelle) in solchen Tabellen sind Formate und Formeln spaltenweise zwangweise einheitlich und werden beim Einfügen oder weiterschreiben der Tabelle automatisch ausgefüllt.
Gruß Daniel

AW: Laufzeitfehler 1004
12.06.2014 13:29:12
Barbara
Hallo Daniel,
vielen Dank für deine Antwort. Ich bekomme hier aber auch einen Laufzeitfehler (Keine Zellen gefunden) und folgende Zeile ist markiert:
Selection.SpecialCells(xlCellTypeConstants).ClearContents
Wie bekomme ich es denn hin, dass die Zeilen unterhalb der Markierten eingefügt werden?
Vielen Dank schon mal!
Gruß Barbara

Anzeige
AW: Laufzeitfehler 1004
12.06.2014 14:56:32
Daniel
Hi
wenn die Zeilen unterhalb der markierung eingefügt werden sollen dann:
Selection.Offset(Selection.Rows.Count, 0).EntireRow.Insert
Range("A6:O6").Copy Destination:=Selection.Offset(Selection.Rows.Count, 0).Resize(, 15)
die Zeile mit dem ClearContents kannst du weglassen, wenn die Zeile 6 eine Vorlagenzeile ist, die nur Formeln und Leerzellen enthält.
Ich bin davon ausgegangen, dass du hier die ersten Datenzeile kopierst, die dann auch Datensatzspezifische Festwerte enthält, die ich damit entfernen wollte, so dass nur die Formeln übrig bleiben und du den Rest mit neuen Daten ausfüllen kannst.
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige