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

Forumthread: VBA Zeilen zählen und einfügen,bis zur ersten LZ

VBA Zeilen zählen und einfügen,bis zur ersten LZ
24.10.2014 16:22:56
braun
Guten Tag,
bin ein totaler Neuling was VBA Programmierung angeht.
Ich habe einige Fragen und hoffe,dass jmd. mir helfen kann.

Sub Makro13()
'Werte eingefügt
Cells(Application.WorksheetFunction.Max(Cells(65536, 1).End(xlUp).Row + 13, 1), 1).Value = "163  _
_
_
_
_
Positionen ausgewählt )"
Cells(Application.WorksheetFunction.Max(Cells(65536, 1).End(xlUp).Row + 2, 1), 1).Value = "Euro  _
_
_
_
_
ActiveCell.Font.Bold = True
End Sub

Dieser Code klappt, die Werte kommen in die richtige Zeile,allerdings variiert die Zeilenanzahl (in diesem Fall 163). Ich möchte diese gerne bis zur ersten Leerzeile (Ergebnis ohne Leerzeile) zählen lassen und an genau dieser obigen Position im Text einfügen.
2. Problem: Den Text Euro hätte ich gerne Fettgedruckt, da passt etwas nicht am Code.
Bin dankbar für jede Antwort!
Gruß,
Karin

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
evtl. ja so, sonst Bsp Datei
24.10.2014 19:22:42
Raphael
Hallo Karin,
ich bin nicht sicher ob ich dich so richtig verstehe. Die letzte beschriebene Zelle in einer Spalte findest du mit

LetzteZeile = Cells(rows.count,1).end(xlup).row

in diesem Fall die letzte Zelle mit Wert im Spalte A.
Fett schreiben. Bei dir wird momentan die aktive Zelle Fett gemacht.
Theoretisch kannst du mit

Cells(1,1).font.bold=true 'Zelle A1 Fett

Jede belibige Zelle Fett machen.
Aber um es dir einfacher zu machen, lad doch eine Beispieldatei hoch an der wir dein Problem bearbeiten können
Gruess
Raphael

Anzeige
AW: evtl. ja so, sonst Bsp Datei
27.10.2014 09:47:09
braun
Guten Morgen,
ich möchte die Zelle formatieren,die eben eingefügt wurde. Deshalb kann ich nicht (1,1) z.B. eingeben, da die Zeilenanzahl immer variiert. Ich möchte quasi "Euro" fettgedruckt haben.
Bin momentan auf Arbeit, Beispieldatei kann ich heute Abend schicken.
Das andere Problem: Ich möchte, dass mir das Makro die Zeilen zählt(zb 163), bis zur ersten Leerzeile.
Diese gezählte Zahl soll dann zb fünf Spalten darunter eingefügt werden, mit dem Text 163 "Positionen ausgewählt"
Vielen Dank

Anzeige
VBA Zeilen zählen und einfügen,bis zur ersten LZ
27.10.2014 08:36:45
braun
Guten Morgen,
ich möchte die Zelle formatieren,die eben eingefügt wurde. Deshalb kann ich nicht (1,1) z.B. eingeben, da die Zeilenanzahl immer variiert. Ich möchte quasi "Euro" fettgedruckt haben.
Bin momentan auf Arbeit, Beispieldatei kann ich heute Abend schicken.
Welchen Code kann ich verwenden,um zur ersten Leerzeile zu kommen UND gleichzeitig einen Text dort einfügen?
Vielen Dank :)

Anzeige
VBA Zeilen zählen und einfügen,bis zur ersten LZ
27.10.2014 08:45:13
braun
Habe mich etwas blöd ausgedrückt:
Ich möchte dass das Makro die Zeilen bis zur ersten Leerzeile zählt (in meinem Sheet müssten 163 belegte Zellen gezählt werden), aber es kann variieren. Diese Zahl (in meinem Beispiel 163)soll dann zehn Zellen weiter unten eingefügt werden.
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

VBA Zeilen zählen und einfügen bis zur ersten Leerzeile


Schritt-für-Schritt-Anleitung

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

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeinDateiname)" > Einfügen > Modul.

  3. Kopiere den folgenden Code in das Modul:

    Sub ZeilenZaehlenUndEinfügen()
        Dim LetzteZeile As Long
        Dim AnzahlZeilen As Long
    
        ' Zähle die Zeilen bis zur ersten Leerzeile
        LetzteZeile = Cells(Rows.Count, 1).End(xlUp).Row
        AnzahlZeilen = 0
    
        For i = 1 To LetzteZeile
            If IsEmpty(Cells(i, 1)) Then Exit For
            AnzahlZeilen = AnzahlZeilen + 1
        Next i
    
        ' Werte einfügen
        Cells(AnzahlZeilen + 10, 1).Value = AnzahlZeilen & " Positionen ausgewählt"
        Cells(AnzahlZeilen + 10, 1).Font.Bold = True
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus: Drücke ALT + F8, wähle ZeilenZaehlenUndEinfügen und klicke auf "Ausführen".

Dieser Code zählt die belegten Zeilen in Spalte A bis zur ersten Leerzeile und fügt die Anzahl der Zeilen zehn Zellen darunter ein. Der Text wird fettgedruckt.


Häufige Fehler und Lösungen

  • Problem: Der Code zählt nicht die richtigen Zeilen.

    • Lösung: Stelle sicher, dass du die richtige Spalte (hier Spalte A) angibst. Falls du eine andere Spalte verwenden möchtest, ändere Cells(i, 1) in Cells(i, X) wobei X die gewünschte Spaltennummer ist.
  • Problem: Der Text wird nicht fett dargestellt.

    • Lösung: Überprüfe, ob die Zeile, in der der Text eingefügt werden soll, korrekt ist. Stelle sicher, dass der Befehl Cells(AnzahlZeilen + 10, 1).Font.Bold = True korrekt platziert ist.

Alternative Methoden

Eine andere Möglichkeit, die Anzahl der Zeilen zu zählen, besteht darin, die Funktion COUNTA in Excel zu verwenden, um die Anzahl der nicht-leeren Zellen zu ermitteln. Dies kann jedoch nicht direkt in VBA umgesetzt werden, ohne den Wert in eine Variable zu speichern.

Ein einfaches Beispiel könnte so aussehen:

AnzahlZeilen = Application.WorksheetFunction.CountA(Range("A:A"))

Diese Methode zählt alle nicht-leeren Zellen in der Spalte A.


Praktische Beispiele

Angenommen, du hast folgende Werte in Spalte A:

1
2
3

5
6

Wenn du das Makro ausführst, wird die Ausgabe in Zelle A10 wie folgt aussehen:

6 Positionen ausgewählt

Hierbei wird die Zahl 6 als die Anzahl der belegten Zellen bis zur ersten Leerzeile gezählt.


Tipps für Profis

  • Verwende Option Explicit am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, Tippfehler zu vermeiden.
  • Plane das Layout deiner Daten so, dass Leerzeilen vermieden werden. So kannst du den vba zeilen zählen bis leer-Prozess optimieren.
  • Experimentiere mit anderen Formatierungsoptionen in VBA, um deine Ausgaben anzupassen.

FAQ: Häufige Fragen

1. Wie kann ich das Makro für eine andere Spalte anpassen?
Ändere einfach die Zahl in Cells(i, 1) auf die entsprechende Spaltennummer.

2. Was passiert, wenn es mehrere Leerzeilen gibt?
Das Makro stoppt bei der ersten gefundenen Leerzeile. Es zählt nur die belegten Zellen bis zu dieser Stelle.

3. Funktioniert der Code in allen Excel-Versionen?
Ja, der Code sollte in den meisten Excel-Versionen funktionieren, die VBA unterstützen (Excel 2007 und höher).

4. Kann ich den Text auch in einer anderen Schriftart formatieren?
Ja, du kannst weitere Formatierungen hinzufügen, wie z.B. Cells(AnzahlZeilen + 10, 1).Font.Name = "Arial" für die Schriftart.

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