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

Forumthread: Kopieren/Einfügen einer Zeile mit Button

Kopieren/Einfügen einer Zeile mit Button
15.06.2020 15:49:05
Steffi
Ich probiere gewisse Zeilen mithilfe eines Active X Buttons kopieren und darunter wieder einzufügen. Das klappt bereits mittels diesem Code:
Mein Code den ich bereits habe:

Private Sub CommandButton1_Click()
Rows("12:14").Copy
CommandButton1.TopLeftCell.EntireRow.Insert
Application.CutCopyMode = False
End Sub

Nun möchte ich mehrere Buttons untereinander haben, die unterschiedliche Zeilen kopieren und wieder einfügen (also zb einmal Zeile 12-14, einmal Zeile 20-24). Natürlich verschiebt sich dann die Zeile (zB statt 20 ist es dann Zeile 23 die kopiert werden soll) wenn ich darüber etwas einfüge. Kann man das irgendwie fixieren, dass das mit runterrutscht und immer dieselben Zeile (nur jetzt mit anderer Nummerierung) kopiert werden?
Außerdem möchte ich die kopierte Zeile ausblenden. Die Zeile, die dann eingefügt wird, wird aber dann auch automatisch ausgeblendet eingefügt. Kann man das ändern, dass es die eingefügte Zeile dann automatisch einblendet beim Einfügen ?
Außerdem wäre es toll wenn man einen zusätzlichen Active-X Button innerhalb der Zeile, die man kopieren möchte, auch mitkopieren kann.
Kann mir jemand dabei helfen?
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: In wie vielen Foren denn noch ?
15.06.2020 18:38:44
Klexy
Wozu brauchst du so viele Buttons?
Es genügt einer, der sich auf die von dir markierten Zeilen bezieht und die kopiert.
Selection.EntireRow.Copy

Anzeige
AW: In wie vielen Foren denn noch ?
15.06.2020 18:40:11
onur
Und wieso fragst du MICH das und nicht "Steffi"?
AW: In wie vielen Foren denn noch ?
16.06.2020 08:17:32
Steffi
Nur in 3 - weils wichtig ist und ich eine Antwort dringend suche, ist das so schlimm :D
Falls irgendwer das Problem mit dem ausblenden lösen könnte, wärs super,, alles andere hab ich schon hinbekommen!
Also diese Frage hier: Außerdem möchte ich die kopierte Zeile ausblenden. Die Zeile, die dann eingefügt wird, wird aber dann auch automatisch ausgeblendet eingefügt. Kann man das ändern, dass es die eingefügte Zeile dann automatisch einblendet beim Einfügen ?
Anzeige
AW: In wie vielen Foren denn noch ?
16.06.2020 08:22:59
SF
Dann wäre es das Mindeste in JEDEM Forum mitzuteilen wo du die Frage noch gestellt hast.
Ansonsten arbeiten mehrere Foren für dich ohne voneinander zu wissen und entwickeln Lösungen, die es ggfls schon gibt. Arbeitest du gerne umsonst?
AW: In wie vielen Foren denn noch ?
16.06.2020 08:35:12
Klexy
Und arbeitest du gern ohne Dank und Antwort? Meine Gegenfrage und Lösung hast du keines Wortes gewürdigt.
Und warum arbeitest du nicht mit Google bei einer so simplen Frage, wie man eine Zeile ein- oder ausblendet?
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Zeilen kopieren und einfügen mit Active-X Button in Excel


Schritt-für-Schritt-Anleitung

Um eine Zeile in Excel mit einem Active-X Button zu kopieren und einzufügen, kannst du den folgenden VBA-Code verwenden. Dieser Code kopiert die Zeilen 12 bis 14 und fügt sie an der Position des Buttons ein:

Private Sub CommandButton1_Click()
    Rows("12:14").Copy
    CommandButton1.TopLeftCell.EntireRow.Insert
    Application.CutCopyMode = False
End Sub

Falls du mehrere Buttons haben möchtest, um verschiedene Zeilen zu kopieren, kannst du diesen Code für jeden Button anpassen. Um sicherzustellen, dass die korrekten Zeilen kopiert werden, musst du den Code so anpassen, dass er die aktuellen Zeilen bezieht.

Hier ein Beispiel, um die Zeilen 20 bis 24 zu kopieren:

Private Sub CommandButton2_Click()
    Rows("20:24").Copy
    CommandButton2.TopLeftCell.EntireRow.Insert
    Application.CutCopyMode = False
End Sub

Um die automatisch ausgeblendeten Zeilen beim Einfügen sichtbar zu machen, füge die folgende Zeile hinzu:

Rows("20:24").EntireRow.Hidden = False

Häufige Fehler und Lösungen

  1. Zeilen werden nicht korrekt kopiert

    • Überprüfe, ob die Zeilenangaben im Code korrekt sind. Bei Änderungen in der Struktur der Tabelle kann es notwendig sein, die Zeilenangaben anzupassen.
  2. Eingefügte Zeilen bleiben ausgeblendet

    • Stelle sicher, dass du die Hidden-Eigenschaft wie oben beschrieben auf False setzt.
  3. Buttons funktionieren nicht

    • Überprüfe, ob die Active-X Steuerelemente in der Entwicklertools-Registerkarte aktiviert sind und dass der Code in einem korrekt verknüpften Modul steht.

Alternative Methoden

Eine alternative Methode besteht darin, einen einzigen Button zu verwenden, der die aktuell markierten Zeilen kopiert. Hier ein Beispiel:

Private Sub CommandButton1_Click()
    Selection.EntireRow.Copy
    Selection.Offset(1, 0).Insert Shift:=xlDown
    Application.CutCopyMode = False
End Sub

Diese Methode ist einfacher, da du nur einen Button benötigst, der für die aktuell ausgewählten Zeilen arbeitet.


Praktische Beispiele

  1. Kopieren und Einfügen von spezifischen Zeilen: Wenn du beispielsweise die Zeilen 10 bis 12 in die nächste Zeile einfügen möchtest:
Private Sub CommandButton1_Click()
    Rows("10:12").Copy
    Rows(13).Insert Shift:=xlDown
    Application.CutCopyMode = False
End Sub
  1. Einfügen von Buttons innerhalb der Zeilen: Um einen Active-X Button innerhalb der zu kopierenden Zeilen zu inkludieren, musst du sicherstellen, dass du die Button-Position korrekt festlegst und den Button entsprechend kopierst.

Tipps für Profis

  • Verwende Variablen für Zeilen: Anstatt feste Zeilennummern zu verwenden, kannst du mit Variablen arbeiten, die die Zeilennummern dynamisch festlegen.

  • Fehlerbehandlung implementieren: Füge eine Fehlerbehandlung hinzu, um unerwartete Fehler abzufangen und verständliche Fehlermeldungen anzuzeigen.

  • Dokumentation: Kommentiere deinen Code ausführlich, um die Wartung und das Verständnis zu erleichtern.


FAQ: Häufige Fragen

1. Wie kann ich mehrere Zeilen gleichzeitig kopieren?
Du kannst mehrere Zeilen kopieren, indem du den Bereich in der Rows-Funktion anpasst, wie im Schritt-für-Schritt-Beispiel gezeigt.

2. Warum funktioniert der Button nicht?
Stelle sicher, dass die Active-X Steuerelemente aktiviert sind und die Makros in Excel nicht blockiert werden. Überprüfe auch die Sicherheitsstufe der Makro-Einstellungen.

3. Wie kann ich den Code für verschiedene Zeilen anpassen?
Du kannst die Zeilennummern im Code ändern oder mit Variablen arbeiten, um die gewünschte Flexibilität zu erreichen.

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