Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeile einfügen und Format der Vorgängerzeile

Zeile einfügen und Format der Vorgängerzeile
10.08.2014 10:42:47
Franziska
Hallo,
es gab hier schon mal eine Anfrage (https://www.herber.de/forum/messages/1375371.html) und keine Lösung, aber ich habe das gleiche Problem.
Ich würde auch gerne über mein UF eine bestimmte Zeile ansteuern und dort soll unterhalb der Sprungmarke eine Zeile eingefügt werden mit den gleichen Formeln, Zellschutz und Formaten.
Geht sowas ?
Die Makros (siehe Thread von oben) sind zwar hilfreich, aber nicht nützlich für mich, da ich mich nicht so gut auskenne.
es grüßt
Franziska

Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile einfügen und Format der Vorgängerzeile
10.08.2014 15:17:52
Tino
Hallo,
und wie sollen wir jetzt dabei helfen bei diesen spärlichen Informationen?
Lade am besten eine Beispieldatei hoch was Du wann wie erreichen möchtest!
Gruß Tino

AW: Zeile einfügen und Format der Vorgängerzeile
10.08.2014 16:08:09
Franziska
Hallo Tino,
meine Datei ist leider auf der Arbeit, aber ich habe mir ja den einen Thread mal angeschaut und da ist ja auch ein Verweis zu einer Beispieldatei.
So ähnlich wäre meine auch, hat zwar mehr Spalten und bei mir ist es eine UF,mit der ich dann die Zeilen einfügen möchte. Es muss auch nicht so umfangreich sein, wie das eine Makro von dem Thread mit "wieviele Zeilen" und so.
Das eine Makro fügt ja auch eine Zeile ein, aber die Formate, Formeln und Zellschutz werden nicht mit übernommen.
Wenn nun diese eine Beispieltabelle nicht reicht, dann muss ich eben bis Dienstag warten, denn dann bin ich wieder auf der Arbeit.
es grüßt
Franziska

Anzeige
AW: Zeile einfügen und Format der Vorgängerzeile
10.08.2014 19:42:03
Franziska
Hallo,
habe ich da was falsch gemacht, bei meiner Anfrage oder ?
Oder ist mein Problem doch etwas aussergewöhnlich?
Andere Anfragen werden beantwortet, aber hier ?
Will ja nicht ungeduldig sein, aber ich denke es eben so.
es grüßt
Franziska

AW: Zeile einfügen und Format der Vorgängerzeile
10.08.2014 21:43:09
Frank
Hallo Franziska,
für sowas gibt's eigentlich den Makrorekorder. Wenn ich das in einer beliebigen Tabelle mache entsteht bei mir sowas:
Sub Makro1()
' Makro1 Makro
' Makro am 10.08.2014 von mir aufgezeichnet
Rows("21:21").Select
Selection.Copy
Rows("22:22").Select
Selection.Insert Shift:=xlDown
End Sub
Daraus erkennt man, dass ich die 21. Zeile angeklickt habe (vorne, um die ganze Zeilezu markieren), dann auf die nächste Zeile rechts geklickt habe, um "kopierte Zeile einfügen" auszuwählen.
Wäre das Dein Wunsch? Wenn ja, müsste man sich jetzt überlegen, wie man die gewählte Zeile flexibel gestalten kann. Das geht zum Beispiel, indem man ein Ereignis für ein Arbeitsblatt "missbraucht". 'BeforeRightClick' oder 'BeforeDoubleClick' bieten sich da immer an, Auswerten der TargetRow und den Code entsprechend ändern...
Zu kompliziert? Dann versuchs doch erstmal ne Weile mit den zwei Klicks, wie oben beschrieben. Sonst machen nämlich andere hier die Arbeit, für die Du bezahlt wirst.
Oder nicht rumzicken und zum Beispiel mal Deine UF posten. Da bräuchte man dann nicht mehr alles neu zu machen, sondern nur noch Änderungshinweise zu geben.
Grüsse,
Frank

Anzeige
AW: Zeile einfügen und Format der Vorgängerzeile
10.08.2014 22:13:07
Franziska
hallo,
das mit dem Makrorekorder habe ich mehrmals schon getestet!
Das ist nicht die Lösung.
Ich suche ganz einfach, suche nach "Artikel" in Spalte A, finde den letzten Eintrag und füge danach eine Zeile ein, ABER mir der Formatierung, Formeln, Zellschutz der vorherigen Zeile!
Ich weiß schon garnicht merh, wie ich das erklären soll!!
Langsam wird mir das zu Blöde!
Schreibt doch ganz einfach: Geht nicht, dann bin ich draussen und weiß Bescheid.
es grüßt
Franziska

Anzeige
AW: Zeile einfügen und Format der Vorgängerzeile
10.08.2014 22:14:49
Franziska
Das ist nun meine Meinung.
Franziska
P.s. bin wahrscheinlich hier als "Neue" erstmal auf "Warteschleife"!

AW: Zeile einfügen und Format der Vorgängerzeile
10.08.2014 22:38:05
Tino
Hallo,
dies hat nichts mit Neuling oder so zu tun, sondern wie genau die Frage gestellt wird.
Hier mal ein Code zum testen.
Sub Copy_Row()
With Tabelle1 'Tabelle anpassen
With .Cells(.Rows.Count, 1).End(xlUp).EntireRow 'letzte Zeile Ref Spalte A
.Copy'kopieren
.Offset(1, 0).PasteSpecial Paste:=xlPasteFormulas 'Formel einfügen
.Offset(1, 0).PasteSpecial Paste:=xlPasteFormats 'Format einfügen
End With
End With
Application.CutCopyMode = False 'kopiermdus abstellen
End Sub
Gruß Tino

Anzeige
AW: Zeile einfügen und Format der Vorgängerzeile
11.08.2014 00:17:18
Ewald
Hallo,
wenn ich das richtig verstehe, willst du in Spalte A nach der Artikelnr. suchen und beim letzten Vorkommen soll dann eine Zeile eingefügt werden.
Was noch unklar ist in welchen Spalten die Formeln stehen
Im folgenden Beispiel wird in Spalte A die Artikelnr. übernommen und in Spalte J die Formel. (war ja so in der Beispieldatei). Alle Formate werden übernommen.
teste mal
Private Sub CommandButton1_Click()
Dim oRange As Range
Dim aCell As Range
Dim bCell As Range
Dim ws As Worksheet
Dim Gefunden As String
Dim Zeile As Long
Dim SN As String
SN = Application.InputBox("Suchbegriff")
On Error GoTo Fehler
Set ws = Worksheets("Belegungsliste")
Set oRange = ws.Columns(1)
Set aCell = oRange.Find(What:=SN, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Not aCell Is Nothing Then
Set bCell = aCell
Gefunden = aCell.Row
Do
Set aCell = oRange.FindNext(After:=aCell)
If Not aCell Is Nothing Then
If aCell.Address = bCell.Address Then Exit Do
Gefunden = Gefunden & ", " & aCell.Row
Else
Exit Do
End If
Loop
Else
MsgBox SN & " nicht gefunden"
Exit Sub
End If
Zeile = Right(Gefunden, 3)
Rows(Zeile + 1).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A" & Zeile).Copy
Range("A" & Zeile + 1).PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("J" & Zeile).Copy
Range("J" & Zeile + 1).PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Exit Sub
Fehler:
MsgBox Err.Description
End Sub
Der Code ist für einen Button gedacht, den Tabellennamen mußt du noch anpassen
Gruß Ewald

Anzeige
erst jammern dann keine Rückmeldung oT.
11.08.2014 19:44:01
Tino

AW: keine Rückmeldung oT.
11.08.2014 22:22:20
Ewald
Hallo Tino,
...eine der Unarten dieses Forums, obwohl es Höflichkeit und Anstand schon gebieten.
Gruß Ewald
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zeile einfügen und Format der Vorgängerzeile übernehmen


Schritt-für-Schritt-Anleitung

Um eine neue Zeile in Excel unterhalb einer bestimmten Zeile einzufügen und dabei die Formatierung sowie Formeln der Vorgängerzeile zu übernehmen, kannst Du ein einfaches VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke auf Einfügen > Modul.

  3. Kopiere und füge den folgenden Code ein:

    Sub NeueZeileEinfügen()
       Dim ws As Worksheet
       Dim lastRow As Long
    
       Set ws = ThisWorkbook.Sheets("DeinBlatt") ' Blattname anpassen
       lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' Letzte Zeile in Spalte A finden
    
       ws.Rows(lastRow + 1).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove ' Neue Zeile einfügen
       ws.Rows(lastRow).Copy ' Vorgängerzeile kopieren
       ws.Rows(lastRow + 1).PasteSpecial Paste:=xlPasteFormats ' Formatierung übernehmen
       ws.Rows(lastRow + 1).PasteSpecial Paste:=xlPasteFormulas ' Formeln übernehmen
       Application.CutCopyMode = False ' Kopiermodus beenden
    End Sub
  4. Führe das Makro aus: Drücke F5, während der Cursor im Code steht, oder gehe zurück zu Excel und führe das Makro über Entwicklertools > Makros aus.


Häufige Fehler und Lösungen

  • Excel fügt keine Zeilen mehr ein: Stelle sicher, dass Du nicht versehentlich geschützte Bereiche in Deiner Tabelle hast. Überprüfe auch, ob die Zeile, unter der Du einfügen möchtest, nicht die letzte Zeile ist.

  • Formate und Formeln werden nicht übernommen: Achte darauf, dass Du die richtigen PasteSpecial-Optionen verwendest. In dem oben genannten Code wird sowohl die Formatierung als auch die Formel übernommen.


Alternative Methoden

Für das Einfügen einer neuen Zeile kannst Du auch folgende Methoden nutzen:

  • Shortcut für das Einfügen unterhalb: Markiere die Zeile, unter der Du eine neue Zeile einfügen möchtest, und drücke Strg + Shift + "+" (Plus-Taste). Dies fügt eine neue Zeile ein, übernimmt jedoch nicht automatisch die Formatierung.

  • Excel Tabelle neue Zeile Formatierung übernehmen: Verwende die Funktion „Einfügen“ und wähle die Option „Zeile einfügen“, um eine Zeile einzufügen und danach manuell die Formatierungen zu kopieren.


Praktische Beispiele

Hier sind einige praktische Beispiele, die Du mit dem oben genannten Makro ausprobieren kannst:

  1. Neue Zeile mit Artikelnummer hinzufügen: Suche nach der letzten Artikelnummer in Spalte A. Das Makro fügt eine neue Zeile direkt darunter ein und übernimmt Formatierungen und Formeln.

  2. Bedingte Formatierung: Wenn Du bedingte Formatierungen in Deiner Tabelle hast, stelle sicher, dass die neuen Zeilen diese ebenfalls erben. Dies kannst Du durch das Kopieren der Formatierung sicherstellen.


Tipps für Profis

  • VBA-Funktionen nutzen: Wenn Du oft Zeilen einfügen musst, erstelle ein benutzerdefiniertes Ribbon oder eine Schaltfläche in Deiner Excel-Oberfläche, um den Prozess zu automatisieren.

  • Zeile einfügen VBA optimieren: Du kannst das Makro erweitern, um mehrere Zeilen gleichzeitig einzufügen oder um spezifische Zellinhalte zu modifizieren, während Du neue Zeilen hinzufügst.

  • Beliebigen Text vorlesen lassen: Mit einer Kombination aus VBA und der Speak-Methode kannst Du Text in bestimmten Zellen vorlesen lassen, was nützlich sein kann, um die Eingaben zu überprüfen.


FAQ: Häufige Fragen

1. Wie kann ich die Zeile einfügen, ohne VBA zu verwenden?
Du kannst die Zeile manuell einfügen, indem Du die gewünschte Zeile mit der rechten Maustaste anklickst und „Zeile einfügen“ wählst. Allerdings werden dabei keine Formate oder Formeln übernommen.

2. Gibt es einen Shortcut für das Einfügen einer Zeile?
Ja, der Shortcut Strg + Shift + "+" (Plus-Taste) fügt eine neue Zeile unterhalb der markierten Zeile ein. Beachte jedoch, dass die Formatierung nicht automatisch übernommen wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige