Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formel runterziehen bis Zelle leer.

Forumthread: Formel runterziehen bis Zelle leer.

Formel runterziehen bis Zelle leer.
30.06.2014 13:18:09
Arif
Hallo Community,
als absoluter VBA Neuling bin ich gerade dabei ein Makro aufzubauen, den größten Teil füge ich mir per Makro Recorder zusammen, jedoch stehe ich nun vor einem Problem bei dem ich einfach keine Lösung finde.
Rein theoretisch erscheint es mir als ein recht simpler Vorgang, die Umsetzung jedoch bereit mir Kopfzerbrechen.
Folgende Thematik:
Ich habe 6 Spalten( A-F), in den ersten 3(A-C) stehen Formeln.
Die Spalten A-C sollen nun "runtergezogen" werden, jedoch logischer Weise nur solange, wie in der Zelle "D" etwas enthalten ist.
Per Recorder setzt mir der Code die aktuelle Zeilenanzahl, er prüft also nichts sondern setzt einfach pauschal die aktelle Zahl.Da die Zeilenanzahl von Tag zu Tag variieren kann ist das unpraktisch.Ich hoffe ich habe das Problem einigermaßen verständlich rübergebracht.
Mit freundlichen Grüßen
Anbei eine Beispieldatei.

Die Datei https://www.herber.de/bbs/user/91330.xls wurde aus Datenschutzgründen gelöscht


Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Formel runterziehen bis Zelle leer.
30.06.2014 13:44:28
fcs
Hallo Arif,
funktioniert etwa wie folgt.
Gruß
Franz
Sub Makro1()
Dim ZeileLetzte As Long
With ActiveSheet
'letzte Zeile in Spalte D
ZeileLetzte = .Cells(.Rows.Count, 4).End(xlUp).Row
'Bereich A2:C2 bis zur letzten Zeile füllen
If ZeileLetzte > 2 Then
.Range(Cells(2, 1), .Cells(ZeileLetzte, 3)).FillDown
End If
End With
End Sub

Anzeige
AW: Formel runterziehen bis Zelle leer.
30.06.2014 13:51:10
Arif
Funktioniert in der Testdatei einwandfrei, ich werde später versuchen es auf das Projekt zu übertragen.
Vielen, vielen Dank.
;
Anzeige
Anzeige

Infobox / Tutorial

Formel in Excel bis zur letzten Zelle runterziehen


Schritt-für-Schritt-Anleitung

  1. Öffne deine Excel-Datei: Stelle sicher, dass die Daten in den Spalten A bis C vorhanden sind und Spalte D die Bedingung für das Runterziehen darstellt.

  2. Öffne den VBA-Editor: Drücke Alt + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu: Klicke im Menü auf Einfügen > Modul.

  4. Kopiere den VBA-Code: Füge den folgenden Code in das Modul ein:

    Sub Makro1()
       Dim ZeileLetzte As Long
       With ActiveSheet
           ' Letzte Zeile in Spalte D
           ZeileLetzte = .Cells(.Rows.Count, 4).End(xlUp).Row
           ' Bereich A2:C2 bis zur letzten Zeile füllen
           If ZeileLetzte > 2 Then
               .Range(Cells(2, 1), .Cells(ZeileLetzte, 3)).FillDown
           End If
       End With
    End Sub
  5. Starte das Makro: Schließe den VBA-Editor und drücke Alt + F8, wähle Makro1 aus und klicke auf Ausführen.

  6. Überprüfe das Ergebnis: Die Formeln in den Zellen A2 bis C2 sollten nun bis zur letzten gefüllten Zelle in Spalte D runtergezogen sein.


Häufige Fehler und Lösungen

  • Fehler: "Makro kann nicht ausgeführt werden."

    • Lösung: Stelle sicher, dass Makros in deinen Excel-Einstellungen aktiviert sind.
  • Fehler: "Die Zellen wurden nicht gefüllt."

    • Lösung: Überprüfe, ob in Spalte D überhaupt Daten vorhanden sind und dass du die richtige Tabelle aktiv hast.
  • Fehler: Der VBA-Editor zeigt einen Syntaxfehler an.

    • Lösung: Achte darauf, dass der Code genau kopiert wurde, ohne zusätzliche Zeichen oder Zeilenumbrüche.

Alternative Methoden

Eine einfache Methode, um Formeln ohne VBA runterzuziehen, ist die Nutzung der Tastenkombination:

  1. Klicke auf die Zelle mit der Formel.
  2. Bewege den Mauszeiger über das kleine Quadrat in der unteren rechten Ecke der Zelle (das "Ausfüllkästchen").
  3. Doppelklicke auf das Ausfüllkästchen. Excel füllt die Zellen automatisch bis zur letzten gefüllten Zelle in der benachbarten Spalte.

Praktische Beispiele

Angenommen, du hast in Spalte A die Formel =B2+C2. Wenn du diese Formel bis zur letzten Zeile in Spalte D runterziehen möchtest, kannst du das oben beschriebene Makro verwenden.

Wenn du mit dem SVERWEIS arbeiten möchtest, wäre ein Beispiel:

=SVERWEIS(A2;Tabelle2!A:B;2;FALSCH)

Um diese Formel ebenfalls bis zur letzten Zelle in Spalte D zu ziehen, kannst du das Makro anpassen oder die oben beschriebene Tastenkombination verwenden.


Tipps für Profis

  • Nutze die Tastenkombination Strg + D, um die Formel in der darüberliegenden Zelle schnell runterzuziehen, wenn du in einer großen Datenmenge arbeitest.

  • Experimentiere mit dem VBA-Code, um ihn an deine speziellen Bedürfnisse anzupassen, z.B. indem du eine zusätzliche Bedingung hinzufügst.

  • Halte deine Arbeitsmappe ordentlich und benenne deine Makros sinnvoll, damit du sie später leichter wiederfinden kannst.


FAQ: Häufige Fragen

1. Wie kann ich das Makro für eine spezifische Tabelle anpassen?
Du kannst das Makro anpassen, indem du ActiveSheet durch Sheets("Tabellenname") ersetzt, um sicherzustellen, dass es auf die gewünschte Tabelle angewendet wird.

2. Gibt es eine Möglichkeit, das Makro automatisch auszuführen, wenn die Datei geöffnet wird?
Ja, du kannst das Makro in das Workbook_Open-Ereignis einfügen, um es beim Öffnen der Datei automatisch auszuführen.

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