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

Makro von aktiver Zelle aus starten

Forumthread: Makro von aktiver Zelle aus starten

Makro von aktiver Zelle aus starten
30.09.2007 16:29:00
aktiver
Hi Ihr, :-)
möchte gerne per Makro die Inhalte der jeweils aktuellen Zeile (= die Zeile, in der sich die Maus bei Ausführung des Makros befindet) kopieren und in der Zeile darunter (mit einigen Löschungen) einfügen.
Das folgende Mini-Makro macht auch genau das - nur immer in der selben Zeile, egal wo sich meine Maus befindet.
Wie kann ich dem Guten den sagen, dass er für das Kopieren immer die gerade aktuelle Zeile (=Pos. der Maus !!!) verwenden soll ?
Ist wahrscheinlich nur ein kleiner Trick - ich komm aber trotzdem nicht drauf... ;-)
VG u. vielen Dank für jeden Tipp,
Micha

Sub Einfügen()
' Tastenkombination: Strg+e Range("B6").Select Selection.EntireRow.Insert Rows("5:5").Select Selection.Copy Rows("6:6").Select ActiveSheet.Paste Rows("5:5").Select Application.CutCopyMode = False Selection.Copy Rows("6:6").Select Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False Application.CutCopyMode = False Range("R6:S6").Select Selection.ClearContents Range("G6:H6").Select Range("H6").Activate Selection.ClearContents Range("C6:D6").Select Range("D6").Activate Selection.ClearContents Range("C6").Select End Sub


Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Makro von aktiver Zelle aus starten
30.09.2007 16:54:04
aktiver
Hallo Micha,
Sub Einfügen()
Dim lngR As Long
'
' Tastenkombination: Strg+e
'

lngR = ActiveCell.Row + 1

Rows(lngR).Insert
Rows(lngR - 1).Copy
Rows(lngR).PasteSpecial Paste:=xlAll
Application.CutCopyMode = False
Range(Cells(lngR, 3), Cells(lngR, 3)).ClearContents
Range(Cells(lngR, 7), Cells(lngR, 8)).ClearContents
Range(Cells(lngR, 18), Cells(lngR, 19)).ClearContents

End Sub


Gruß Sepp

Anzeige
AW: Makro von aktiver Zelle aus starten
30.09.2007 17:52:00
aktiver
Hi Sepp,
vielen Dank für die schnelle Antwort !!!
läuft einwandfrei - und sieht auch noch besser aus, als meins! ;-)
VG u. schönen Abend,
Micha
Anzeige

Infobox / Tutorial

Makro zum Kopieren von Zeilen in Excel


Schritt-für-Schritt-Anleitung

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

  2. Klicke im Menü auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden Code in das Modul:

    Sub Einfügen()
        Dim lngR As Long
        lngR = ActiveCell.Row + 1
        Rows(lngR).Insert
        Rows(lngR - 1).Copy
        Rows(lngR).PasteSpecial Paste:=xlAll
        Application.CutCopyMode = False
        Range(Cells(lngR, 3), Cells(lngR, 3)).ClearContents
        Range(Cells(lngR, 7), Cells(lngR, 8)).ClearContents
        Range(Cells(lngR, 18), Cells(lngR, 19)).ClearContents
    End Sub
  4. Schließe den VBA-Editor.

  5. Wechsle zurück zu Excel und wähle die Zeile aus, die Du kopieren möchtest.

  6. Drücke Strg + E, um das Makro auszuführen.


Häufige Fehler und Lösungen

  • Fehler: "Anwendungs- oder Objektfehler"

    • Lösung: Stelle sicher, dass Du eine Zelle in einer vorhandenen Zeile ausgewählt hast, bevor Du das Makro ausführst.
  • Fehler: Zeilen werden nicht korrekt eingefügt.

    • Lösung: Überprüfe, ob der Code korrekt in das Modul kopiert wurde und keine Zeilen fehlen.

Alternative Methoden

Eine andere Methode, um Inhalte zu kopieren, besteht darin, die Tastenkombinationen in Excel zu verwenden:

  1. Wähle die Zeile aus, die Du kopieren möchtest.
  2. Drücke Strg + C, um zu kopieren.
  3. Wähle die Zeile darunter aus und drücke Strg + V, um die Inhalte einzufügen.
  4. Lösche manuell die nicht benötigten Inhalte.

Praktische Beispiele

Nehmen wir an, Du hast die folgenden Daten in Zeile 5:

A B C D
1 2 3 4

Wenn Du das Makro ausführst, wird die Zeile 5 in Zeile 6 kopiert, und die Spalten C, G und H werden gelöscht. Das Ergebnis in Zeile 6 wäre:

A B C D
1 2

Tipps für Profis

  • Du kannst das Makro anpassen, um spezifische Bereiche zu kopieren, indem Du die Zeilen im Code änderst.
  • Nutze die Debugging-Tools im VBA-Editor, um den Code während der Ausführung zu überwachen und Fehler schneller zu finden.
  • Dokumentiere Deine Makros, um sie später leichter anpassen zu können.

FAQ: Häufige Fragen

1. Wie kann ich das Makro für eine andere Tastenkombination anpassen?
Du kannst die Tastenkombination ändern, indem Du in den VBA-Editor gehst und im Menü Extras > Makros > Makros... auswählst. Klicke auf Optionen und ändere die Tastenkombination.

2. Funktioniert das Makro in allen Excel-Versionen?
Ja, das Makro funktioniert in den meisten modernen Excel-Versionen, einschließlich Excel 2010, 2013, 2016, 2019 und Microsoft 365. Achte darauf, dass die Makros in Deinen Excel-Einstellungen aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige