Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: nur beschriebene Zellen/Zeilen per VBA markieren

nur beschriebene Zellen/Zeilen per VBA markieren
22.03.2005 11:10:20
Dirk
Hallo zusammen,
wie kann ich denn in einem Makro (für ein Copy and Paste) nur die Zellen bzw. Zeilen kopieren, die nicht leer sind.
analog zu dem Befehl Strg + Shift + Ende
PS: Wenn ich diese Aktion mit dem Makrorekorder aufnehme, wird leider nur die genaue Spalten- und Zeilenanzahl angegeben, was mir bei unterschiedlichen Zeilenzahlen nichts bringt.
Vielen Dank für eure Hilfe.
Gruß, Dirk
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nur beschriebene Zellen/Zeilen per VBA markieren
22.03.2005 11:40:28
Markus
Hallo Dirk,
ich hätte dein Problem so gelöst. Du kopierst alle gefüllten Textfelder fügst sie in ein anderes Blatt ein. In diesem Fall von Blatt1 in Blatt2. Ich geh jetzt auch nur von einem 10 auf 10 Zellen Ausschnitt ein. Musst halt noch anpassen auf deine Bedürfnisse:

Sub Text_Kopieren()
Dim i, j As Integer
For i = 1 To 10
For j = 1 To 10
If Cells(i, j) <> "" Then
Cells(i, j).Copy
Sheets("Tabelle2").Activate
Cells(i, j).Insert
Sheets("Tabelle1").Activate
End If
Next j
Next i
Application.CutCopyMode = False
End Sub

Gruß
Markus
Anzeige
AW: nur beschriebene Zellen/Zeilen per VBA markieren
22.03.2005 11:44:20
Jörg
Hallo Dirk,

Sub test()
Sheets("Tabelle1").UsedRange.Copy
End Sub

Gruß Jörg
AW: nur beschriebene Zellen/Zeilen per VBA markieren
22.03.2005 13:31:28
Dirk
Hey, genau das hab ich gesucht. S U P E R !!!
Vielen Dank und einen schönen Tag noch,
Dirk
AW: nur beschriebene Zellen/Zeilen per VBA markieren
22.03.2005 13:39:08
Markus
Hallo,
@Jörg: Was soll dein Code eigentlich machen? Der makiert auf jede Fall nicht nur beschriebene Zellen, sondern auch leere.
Gruß
Markus
Anzeige
analog zu dem Befehl Strg + Shift + Ende
22.03.2005 21:46:22
Jörg
Hallo Markus,
ja so war es gewünschst.
Zitat:
analog zu dem Befehl Strg + Shift + Ende
Gruß Jörg
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Nur beschriebene Zellen und Zeilen per VBA markieren


Schritt-für-Schritt-Anleitung

Um in Excel nur die beschriebene Zellen und Zeilen per VBA zu markieren, kannst Du folgenden Schritt-für-Schritt-Ansatz verfolgen:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  2. Neues Modul erstellen: Klicke mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“, wähle „Einfügen“ und dann „Modul“.

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

    Sub NurBefuellteZellenMarkieren()
       Dim rng As Range
       Dim cell As Range
       Dim Ziel As Range
    
       ' Setze den Zielbereich auf das Arbeitsblatt, auf das du die Daten kopieren möchtest
       Set Ziel = Sheets("Tabelle2").Range("A1")
    
       ' Durchlaufe alle Zellen im verwendeten Bereich von Tabelle1
       For Each cell In Sheets("Tabelle1").UsedRange
           If Not IsEmpty(cell.Value) Then
               cell.Copy Ziel
               Set Ziel = Ziel.Offset(1, 0) ' Verschiebe den Zielbereich nach unten
           End If
       Next cell
    
       Application.CutCopyMode = False
    End Sub
  4. Ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Drücke ALT + F8, wähle „NurBefuellteZellenMarkieren“ und klicke auf „Ausführen“.


Häufige Fehler und Lösungen

  • Fehler: Der Code kopiert leere Zellen.

    • Lösung: Stelle sicher, dass die Bedingung If Not IsEmpty(cell.Value) korrekt im Code verwendet wird. Diese Bedingung sorgt dafür, dass nur gefüllte Zellen kopiert werden.
  • Fehler: Der Zielbereich wird nicht korrekt aktualisiert.

    • Lösung: Überprüfe die Zeile Set Ziel = Ziel.Offset(1, 0), um sicherzustellen, dass der Zielbereich immer um eine Zeile nach unten verschoben wird.

Alternative Methoden

Eine alternative Methode, um nur die befüllten Zellen anzuzeigen, ist die Verwendung von Excel-Formeln oder der „Spezial Einfügen“-Funktion:

  1. Verwende die Filterfunktion: Du kannst den Autofilter aktivieren und nur die befüllten Zellen anzeigen lassen.
  2. Spezial Einfügen: Kopiere den gesamten Bereich und füge ihn mit der Option „Nur Werte“ ein, um nur die ausgefüllten Zellen zu übertragen.

Praktische Beispiele

  • Beispiel 1: Wenn Du nur die ausgefüllten Zellen aus einem Bereich von A1 bis J10 kopieren möchtest, kannst Du den Bereich im Code anpassen:

    For Each cell In Sheets("Tabelle1").Range("A1:J10")
  • Beispiel 2: Um die Zellen in eine andere Tabelle zu kopieren, ändere die Zeile Set Ziel = Sheets("Tabelle2").Range("A1") entsprechend.


Tipps für Profis

  • Optimierung: Verwende Application.ScreenUpdating = False, um die Bildschirmaktualisierung während des Makros zu deaktivieren. Dies beschleunigt den Kopiervorgang.

    Application.ScreenUpdating = False
    ' Dein Code hier
    Application.ScreenUpdating = True
  • Erweiterung: Du kannst den Code erweitern, um auch die Formatierung der befüllten Zellen zu übernehmen, indem Du cell.Copy durch cell.Copy Destination:=Ziel ersetzt.


FAQ: Häufige Fragen

1. Wie kann ich nur gefüllte Zellen in der aktuellen Zeile markieren?
Du kannst die Schleife so anpassen, dass sie nur über die aktuelle Zeile iteriert, anstatt über den gesamten verwendeten Bereich.

2. Funktioniert dieser Code in allen Excel-Versionen?
Ja, dieser VBA-Code sollte in allen modernen Excel-Versionen (z.B. Excel 2010 und höher) funktionieren. Achte jedoch darauf, dass du die entsprechenden Blätter korrekt benennst.

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