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

Forumthread: letzte Spalte ermitteln

letzte Spalte ermitteln
17.10.2005 20:13:58
Helmut
Hallo Zusammen,
habe ein Problem die letzte benutzte Spalte in einem Tabellenblatt z. Beispiel in Zeile 1 zu ermitteln. Möchte dieses gerne über die Funktion "end" realisieren. Es gibt die Möglichkeit über eine Zählung der gesamten Spalten column.count (256) und dann dem Befehl end(xltoleft) die letzte belegte Spalte zu finden. Ich weiß das es so in der Art geht, habe es irgendwo gelesen, komme aber nicht mehr auf den richtigen Ansatz.
Kann mir hier jemand helfen?
Gruß,
Helmut Palmen
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: letzte Spalte ermitteln
17.10.2005 20:16:42
Beni
Hallo Hellmut,
Gruss Beni
ls = Cells(1,256).End(xltoleft)column
AW: letzte Spalte ermitteln
17.10.2005 20:24:10
Peter
Servus,
zwei Optionen (mir bekannt). Wobei ich die 2te bevorzugen würde, da sonst nur eine Zeile geprüft wird. Kann aber sein das in Zeile 2 die letzte Spalte ne ganz andere ist als in der ersten Zeile.
Sub t()
With Sheets("Tabelle1")
MsgBox .Cells(1, 256).End(xlToLeft).Columns
MsgBox .UsedRange.Columns.Count
End With
End Sub

MfG Peter
Anzeige
AW: letzte Spalte ermitteln
17.10.2005 20:39:22
Fred
Hi,
"MsgBox .UsedRange.Columns.Count"
Erste benutzte Zelle AA27, letzte benutzte Zelle AB30, was liefert da dein Code?
Denk mal darüber nach.
mfg Fred
AW: letzte Spalte ermitteln
17.10.2005 21:32:28
helmut
Hallo Zusammen,
vielen Dank für Eure prompte Unterstützung!! Bin wieder auf dem Pfad!!!
Danke!
Gruß,
Helmut
@Fred:
18.10.2005 07:09:30
Peter
Servus,
da brauch ich nicht drüber nachdenken, ich glaube zwei Lösungen vorgeschlagen zu haben.
Wovon ich denke das die zweite besser ist, was du davon hältst ist mir eigentlich egal.
MfG Peter
Anzeige
AW: @Fred:
18.10.2005 15:36:45
Fred
Hi,
die zweite Lösung ist ja keine, weil schlicht falsch, egal was ich davon halte.
Du bist ja inzwischen für solch unqualifizierte Schnellschüsse bekannt.
Schade nur, dass man PeterW u.U. mit dir verwechselt.
mfg Fred
AW: @Fred:
18.10.2005 16:16:00
Peter
Richtig aber Gott sei Dank, hat der Herr ja solche Menschen wie dich auf die Welt geschickt um Menschen wie mich zu bekämüfen ;-)
Weitere Äußerungen verkneif ich mir dann mal lieber.
Peter
Anzeige
;

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

Letzte Spalte in Excel VBA ermitteln


Schritt-für-Schritt-Anleitung

Um die letzte benutzte Spalte in einem Excel-Arbeitsblatt mit VBA zu ermitteln, kannst du folgende Schritte befolgen:

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

  2. Füge ein neues Modul hinzu, indem du im Menü auf Einfügen > Modul klickst.

  3. Kopiere und füge den folgenden Code in das Modul ein:

    Sub LetzteSpalteErmitteln()
        Dim letzteSpalte As Long
        letzteSpalte = Cells(1, Columns.Count).End(xlToLeft).Column
        MsgBox "Die letzte benutzte Spalte in Zeile 1 ist: " & letzteSpalte
    End Sub
  4. Schließe den VBA-Editor und führe das Makro aus, indem du ALT + F8 drückst und das Makro auswählst.

Dieser Code verwendet die Methode End(xlToLeft), um die letzte Spalte mit Inhalt zu finden. Du kannst diesen Ansatz für verschiedene Zeilen anpassen, indem du die Zeilennummer in Cells(1, ...) änderst.


Häufige Fehler und Lösungen

  • Fehler: "Typenkonflikt" oder "Objektvariable nicht gesetzt".

    • Lösung: Stelle sicher, dass dein VBA-Code korrekt formatiert ist und du die richtige Arbeitsmappe und das richtige Arbeitsblatt verwendest.
  • Fehler: Das Ergebnis ist nicht das erwartete.

    • Lösung: Überprüfe, ob in der angegebenen Zeile tatsächlich Daten vorhanden sind. Möglicherweise musst du die Zeilennummer anpassen.

Alternative Methoden

Es gibt mehrere Ansätze, um die letzte Spalte in Excel VBA zu ermitteln. Eine weitere Möglichkeit ist die Verwendung der UsedRange-Eigenschaft:

Sub LetzteSpalteMitUsedRange()
    Dim letzteSpalte As Long
    letzteSpalte = ActiveSheet.UsedRange.Columns.Count
    MsgBox "Die letzte benutzte Spalte im aktiven Arbeitsblatt ist: " & letzteSpalte
End Sub

Diese Methode zählt die Spalten im verwendeten Bereich und kann nützlich sein, wenn du alle benutzten Zellen berücksichtigen möchtest.


Praktische Beispiele

Hier sind einige praktische Beispiele für die Verwendung der VBA-Funktion zur Ermittlung der letzten Spalte:

  1. Letzte Spalte in Zeile 1 ermitteln:

    Sub LetzteSpalteErmitteln()
        Dim letzteSpalte As Long
        letzteSpalte = Cells(1, Columns.Count).End(xlToLeft).Column
        MsgBox "Die letzte benutzte Spalte in Zeile 1 ist: " & letzteSpalte
    End Sub
  2. Letzte Spalte mit Inhalt in einer bestimmten Zeile:

    Sub LetzteSpalteInZeileErmitteln()
        Dim letzteSpalte As Long
        Dim zeile As Long
        zeile = 5 ' Ändere dies auf die gewünschte Zeile
        letzteSpalte = Cells(zeile, Columns.Count).End(xlToLeft).Column
        MsgBox "Die letzte benutzte Spalte in Zeile " & zeile & " ist: " & letzteSpalte
    End Sub

Tipps für Profis

  • Nutze Option Explicit am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, Fehler zu vermeiden.
  • Wenn du mit großen Datenmengen arbeitest, kann es sinnvoll sein, den ScreenUpdating-Modus zu deaktivieren, um die Leistung zu verbessern:

    Application.ScreenUpdating = False
    ' Dein Code hier
    Application.ScreenUpdating = True

FAQ: Häufige Fragen

1. Wie kann ich die letzte Spalte mit Inhalt ermitteln?
Du kannst die End(xlToLeft)-Methode verwenden, um die letzte Spalte zu finden, die Daten enthält. Beispiel: Cells(1, Columns.Count).End(xlToLeft).Column.

2. Was ist der Unterschied zwischen UsedRange und End(xlToLeft)?
UsedRange gibt die gesamte benutzte Fläche zurück, während End(xlToLeft) nur die letzte benutzte Zelle in der angegebenen Zeile ermittelt.

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