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

Zeilen einfügen

Zeilen einfügen
15.12.2003 12:10:20
Martin E.
Hallo, habe ein kleines Problem, für Euch wahrscheinlich ein Klacks:


Sub ZeilenEinfügen()
Dim i As Integer
For i = 1 To 500
If Range("A" & i).Value = "Werk" Then
Range("a" & i).EntireRow.Select
Selection.Insert Shift:=xlDown
Selection.Offset(2, 0).Select
End If
Next i
On Error Resume Next
End Sub


Das Wort Werk kommt ca. in jeder 8. Zeile vor. Excel fügt aber alle Zeilen vor der ersten Zeile mit dem Wort Werk ein und schiebt den Rest bis zur Zeile 500. Der Offset-Befehl funktioniert nicht, weil ja mit "next i" er wieder aufgehoben wird. Aber wie geht es sonst, daß er das i durch das Hinunterschieben um den Wert 1 (oder 2) erhöht?

Danke.

Martin

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

Betreff
Datum
Anwender
Anzeige
For i = 500 to 1 Step -1
15.12.2003 12:13:30
Boris
Hi Martin,

...durchlauf das Ganze rückwärts. Und verzichte doch auf die Selektiererei:
Rows(i).Insert

Grüße Boris
AW: For i = 500 to 1 Step -1
15.12.2003 12:19:17
Martin E.
Lieber Boris,
Da hast Du natürlich recht, da spar ich mir eine Menge an Tipparbeit.

Aber leider löst es mein Problem nicht, denn das Resultat ist das selbe!!!

Hast Du vielleicht noch einen Tipp? Wäre Dir da sehr dankbar. Es sind nämlich ca. 2000 Zeilen.

Martin
Rows(i + 1).Insert
15.12.2003 12:25:46
Boris
Grüße Boris
AW: Rows(i + 1).Insert - DANKE!!!
15.12.2003 17:33:19
Martin
DANKE!!!
AW: Zeilen einfügen
15.12.2003 12:32:04
Reinhard
Hi Martin,
ungetestet, müßte aber so laufen:

Sub ZeilenEinfügen()
Dim i As Integer
Dim Zeile As Long
Zeile = 0
For i = 1 To 500
Zeile = Zeile + 1
If Range("A" & Zeile).Value = "Werk" Then
Range("a" & Zeile).EntireRow.Select
Selection.Insert Shift:=xlDown
Zeile = Zeile + 1
End If
Next i
On Error Resume Next
End Sub

Gruß
Reinhard
Anzeige
AW: Zeilen einfügen
15.12.2003 17:03:03
Martin
Lieber Reinhard,
Vielen Dank, aber leider habe ich auch mit Deinem Makro das gleiche Ergebnis.

Martin
AW: Zeilen einfügen
15.12.2003 17:06:16
Martin
Hallo Boris,

Sorry, habe Deinen Hinweis im Betreff übersehen.

Geht prima, vielen Dank!!!

Martin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige