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

am Ende einer Tabelle eine neue Zeile einfügen

Forumthread: am Ende einer Tabelle eine neue Zeile einfügen

am Ende einer Tabelle eine neue Zeile einfügen
29.05.2003 16:20:38
Pit
Hi Leute!
Ich habe da folgendes Problem:
Ich habe eine Tabelle erstellt. An deren Ende soll nun per Klick auf einen Button immer eine neue Zeile eingefügt werden. Ich habe mir dazu ein Makro aufgezeichnet und der Schaltfläche zugewiesen. Nun kopiert das doofe Ding :-) aber natürlich immer genau die Zeile , die ich mir beim Aufzeichnen ausgesucht habe und fügt die neue Zeile auch immer an der gleichen Stelle (in diesem Fall Zeile 17) wieder ein. Wie kann ich das Makro so ändern, dass es feststellt, wie lang die Tabelle ist (zum Beispiel an Hand der laufenden Nummer), die letzte Zeile kopiert, eine neue Zeile anhängt und die kopierten Zellen einfügt?
Ich habe nicht sehr viel Ahnung von der Makroprogrammiererei, also es wäre schön, wenn die Antwort nicht zu kompliziert ausfällt :-)
Danke im Voraus


Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: am Ende einer Tabelle eine neue Zeile einfügen
29.05.2003 16:51:20
heinerv

Hallo Pit

wenn Du in die erste freie Zeile willst, benötigst Du
folgende Befehle:

Range("A1").Activate 'Beginn der Einträge
ActiveCell.End(xlDown).Activate 'sucht letzte belegte Zelle
ActiveCell.Offset(1, 0).Activate 'geht in die nächst Zeile

Gruß
heinerv

Anzeige
Re: am Ende einer Tabelle eine neue Zeile einfügen
29.05.2003 19:08:25
PeterW

Hallo Pit,

von wo nach wo willst du kopieren, von einem Blatt ins andere? Vielleicht wäre es deutlicher, wenn du deinen Code gepostet hättest. Für die Ermittlung der letzten Zeile schau dir das mal an:

Gruß
Peter

Re: am Ende einer Tabelle eine neue Zeile einfügen
30.05.2003 11:52:36
Pit

Danke Ihr beiden!
Das Auffinden der letzten belegten Zeile war mein größeres Problem ;-)
Meine Kopiererei ließ sich einfach mit dem Makrorecorder aufzeichnen, dann Eure Hinweise + das eine oder andere Herrentag-Bierchen und schon war alles erledigt.
Pit

Anzeige
;
Anzeige

Infobox / Tutorial

Neue Zeile am Ende einer Excel-Tabelle einfügen


Schritt-für-Schritt-Anleitung

Um am Ende einer Excel-Tabelle eine neue Zeile einzufügen, kannst Du ein einfaches VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Neues Modul erstellen: Klicke auf "Einfügen" und wähle "Modul".

  3. Makro-Code eingeben: Füge den folgenden Code in das Modul ein:

    Sub NeueZeileEinfuegen()
       Dim letzteZeile As Long
       letzteZeile = Cells(Rows.Count, 1).End(xlUp).Row + 1
       Rows(letzteZeile).Insert Shift:=xlDown
    End Sub
  4. Makro zuweisen: Schließe den VBA-Editor und gehe zurück zu Excel. Klicke mit der rechten Maustaste auf einen Button, wähle "Makro zuweisen" und wähle NeueZeileEinfuegen.

  5. Testen: Klicke auf den Button, um eine neue Zeile am Ende der Tabelle einzufügen.


Häufige Fehler und Lösungen

  • Fehler: Makro funktioniert nicht: Stelle sicher, dass das Makro in der richtigen Arbeitsmappe gespeichert ist und dass Du die Makros in Excel aktiviert hast.
  • Fehler: Zelle wird nicht eingefügt: Überprüfe, ob die Tabelle richtig formatiert ist und keine Leerzeilen vorhanden sind.
  • Fehler: Falsche Zeile wird eingefügt: Achte darauf, dass die letzte Zeile korrekt ermittelt wird. Der Code Cells(Rows.Count, 1).End(xlUp).Row sollte die letzte belegte Zeile finden.

Alternative Methoden

Falls Du kein VBA verwenden möchtest, gibt es auch alternative Methoden:

  • Formeln nutzen: Du kannst die Funktion =ANZAHL(A:A) verwenden, um die Anzahl der Einträge in Spalte A zu zählen und die nächste Zeile zu bestimmen.
  • Tabelle formatiert nutzen: Wenn Du eine Excel-Tabelle (Strg + T) verwendest, kannst Du einfach unter die letzte Zeile klicken und direkt mit der Eingabe beginnen. Excel fügt automatisch neue Zeilen hinzu.

Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du das Makro anpassen kannst:

  • Daten von einem anderen Blatt kopieren: Wenn Du Daten von einem anderen Blatt in die neue Zeile einfügen möchtest, kannst Du den Code wie folgt erweitern:

    Sub NeueZeileEinfuegenMitKopieren()
       Dim letzteZeile As Long
       letzteZeile = Cells(Rows.Count, 1).End(xlUp).Row + 1
       Rows(letzteZeile).Insert Shift:=xlDown
       Sheets("Quellblatt").Range("A1").Copy Destination:=Sheets("Zielblatt").Cells(letzteZeile, 1)
    End Sub
  • Daten formatieren: Du kannst die neu erstellte Zeile sofort formatieren, um sie hervorzuheben.


Tipps für Profis

  • Fehlerbehandlung: Füge eine Fehlerbehandlung in Dein Makro ein, um unvorhergesehene Probleme zu vermeiden. Zum Beispiel:

    On Error GoTo Fehler
    ' Dein Code hier
    Exit Sub
    Fehler:
    MsgBox "Ein Fehler ist aufgetreten: " & Err.Description
  • Makros optimieren: Halte Deine Makros so einfach und klar wie möglich. Verwende Kommentare, um den Code verständlicher zu machen.


FAQ: Häufige Fragen

1. Wie kann ich das Makro anpassen, um bestimmte Zellen zu kopieren? Du kannst die Range-Anweisung im Makro ändern, um spezifische Zellen auszuwählen. Zum Beispiel: Range("A1:B1").Copy.

2. Funktioniert das auch in Excel 365? Ja, das Makro funktioniert in Excel 365 sowie in anderen Versionen, solange VBA unterstützt wird.

3. Kann ich mehrere Zeilen gleichzeitig einfügen? Ja, Du kannst den Code anpassen, um mehrere Zeilen einzufügen. Ändere die Insert-Anweisung entsprechend.

4. Wo finde ich den VBA-Editor? Der VBA-Editor ist über das Menü "Entwicklertools" oder durch Drücken von ALT + F11 zugänglich. Wenn das Menü "Entwicklertools" nicht sichtbar ist, kannst Du es in den Excel-Optionen aktivieren.

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