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

Forumthread: Zeile Einfügen unterhalb und oberhalb?

Zeile Einfügen unterhalb und oberhalb?
peter
Hallo liebes Forum!!
Ich habe eine Tabelle, in der steht in der Spalte A Zahlen zwischen 1000 und 1000000. Wenn nun die Zahl 1000 od. 2000 od. 3000 od. 4000 auftaucht soll unterhalb und oberhalb der Zahl eine leere Zeile eingefügt werden. Mit nachfolgendem Makro schaffe ich es oberhalb der der Zahl eine Lehrzeile einzufügen:

Sub Zeilen_einfügen1()
Dim lngZeile As Long
Application.ScreenUpdating = False
For lngZeile = Cells(65536, 1).End(xlUp).Row To 1 Step -1
If Cells(lngZeile, 1) = 1000 Or Cells(lngZeile, 1) = 2000 Or Cells(lngZeile, 1) = 3000 Or Cells(lngZeile, 1) = 4000 Or Cells(lngZeile, 1) = 5000 Or Cells(lngZeile, 1) = 6000 Or Cells(lngZeile, 1) = 7000 Then
With Rows(lngZeile)
.Insert shift:=xlShiftDown
.Font.Bold = True
End With
End If
Next
Application.ScreenUpdating = True
End Sub

Wie schaffe ich es nun auch unterhalb der Zahle eine Leerzeile einzufügen?
Das ganze sollte in einer Schleife verpackt sein, die mehrere Tabellenblätter durchläuft !?
Für Eure Mühe habt vielen Dank!
Gruß
peter
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Zeile Einfügen unterhalb und oberhalb?
ChrisL
Hi Peter
With Rows(lngZeile + 1)
Gruss
Chris
Danke, hat funktioniert !! o.T.
21.04.2004 12:56:46
peter
.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zeilen in Excel VBA einfügen: Oberhalb und unterhalb einer Zahl


Schritt-für-Schritt-Anleitung

Um in Excel VBA eine Zeile oberhalb und unterhalb einer bestimmten Zahl einzufügen, kannst du das folgende Makro verwenden. Dieses Makro prüft jede Zeile in der angegebenen Spalte und fügt, wenn es auf die Zahlen 1000, 2000, 3000 oder 4000 trifft, sowohl oberhalb als auch unterhalb der Zahl eine leere Zeile ein:

Sub Zeilen_einfügen()
    Dim lngZeile As Long
    Application.ScreenUpdating = False
    For lngZeile = Cells(65536, 1).End(xlUp).Row To 1 Step -1
        If Cells(lngZeile, 1) = 1000 Or Cells(lngZeile, 1) = 2000 Or Cells(lngZeile, 1) = 3000 Or Cells(lngZeile, 1) = 4000 Then
            ' Zeile oberhalb einfügen
            Rows(lngZeile).Insert shift:=xlShiftDown
            ' Zeile unterhalb einfügen
            Rows(lngZeile + 1).Insert shift:=xlShiftDown
        End If
    Next
    Application.ScreenUpdating = True
End Sub

Dieses Makro funktioniert in Excel-Versionen, die VBA unterstützen. Achte darauf, die richtige Spalte in Cells(lngZeile, 1) zu verwenden, falls deine Daten in einer anderen Spalte stehen.


Häufige Fehler und Lösungen

  • Fehler: Keine Zeilen werden eingefügt.

    • Lösung: Stelle sicher, dass die Zahlen in der Spalte tatsächlich mit 1000, 2000, 3000 oder 4000 übereinstimmen.
  • Fehler: Das Makro läuft nicht durch alle Tabellenblätter.

    • Lösung: Um das Makro durch mehrere Tabellenblätter laufen zu lassen, füge eine Schleife hinzu, die durch die Worksheets iteriert.
For Each ws In ThisWorkbook.Worksheets
    ws.Activate
    ' Dein bestehendes Code hier
Next ws

Alternative Methoden

Wenn du keine VBA-Programmierung verwenden möchtest, kannst du auch die Standardfunktion von Excel nutzen. Du kannst eine neue Zeile manuell einfügen, indem du mit der rechten Maustaste auf die Zeile klickst und "Zeile einfügen" wählst. Eine Tastenkombination, um eine Zeile unterhalb einzufügen, ist Shift + Leertaste gefolgt von Strg + +.


Praktische Beispiele

Hier ist ein einfaches Beispiel, das zeigt, wie das Makro in einer Arbeitsmappe verwendet wird:

  1. Öffne Excel und erstelle eine neue Arbeitsmappe.
  2. Füge einige Zahlen in die Spalte A ein (z.B. 1000, 2000, 3000).
  3. Öffne den VBA-Editor (Alt + F11).
  4. Füge das obige Makro in ein neues Modul ein.
  5. Führe das Makro aus (F5).

Du wirst sehen, dass für jede Zahl eine leere Zeile oberhalb und unterhalb hinzugefügt wird.


Tipps für Profis

  • Verwende die Application.ScreenUpdating-Eigenschaft, um die Bildschirmaktualisierung während der Ausführung des Makros zu deaktivieren, um die Ausführungsgeschwindigkeit zu erhöhen.
  • Du kannst die Zahlen, die geprüft werden sollen, in ein Array speichern und die If-Bedingung entsprechend anpassen, um den Code aufgeräumter zu halten.
  • Bei der Verwendung von VBA ist es hilfreich, Kommentare im Code hinzuzufügen, um die Funktionalität zu erklären.

FAQ: Häufige Fragen

1. Wie kann ich eine Zeile oberhalb einfügen ohne VBA?
Du kannst eine Zeile manuell einfügen, indem du mit der rechten Maustaste auf die Zeile klickst und „Zeile einfügen“ wählst oder die Tastenkombination Strg + + verwendest.

2. Kann ich das Makro so anpassen, dass es nur in bestimmten Tabellenblättern funktioniert?
Ja, du kannst eine Bedingung hinzufügen, die nur auf die gewünschten Tabellenblätter anwendet, indem du den Namen des Arbeitsblattes überprüfst, bevor du das Einfügen der Zeilen ausführst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige