Vba: so finden sie die zuletzt verwendete spalte
Sie können die folgende grundlegende Syntax in VBA verwenden, um die zuletzt verwendete Spalte in einer Excel-Tabelle zu finden:
Sub FindLastColumn()
Range(" A14 ") = Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
End Sub
In diesem speziellen Beispiel wird nach der zuletzt verwendeten Spalte im aktuellen Blatt gesucht und das Ergebnis in Zelle A14 zurückgegeben.
Wenn Sie stattdessen die letzte Spalte eines Meldungsfelds anzeigen möchten, können Sie die folgende Syntax verwenden:
Sub FindLastColumn()
Dim LastCol As Long
LastCol=Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
MsgBox " Last Column: " & LastCol
End Sub
Die folgenden Beispiele zeigen, wie jede dieser Methoden in der Praxis angewendet werden kann.
Verwandte Themen: VBA: So finden Sie die zuletzt verwendete Zeile
Beispiel 1: Suchen Sie mit VBA die letzte Spalte und zeigen Sie die Ergebnisse in der Zelle an
Nehmen wir an, wir haben den folgenden Datensatz in Excel, der Informationen über verschiedene Basketballspieler enthält:
Wir können das folgende Makro erstellen, um die letzte in dieser Excel-Tabelle verwendete Spalte zu finden und das Ergebnis in Zelle A14 anzuzeigen:
Sub FindLastColumn()
Range(" A14 ") = Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
End Sub
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:
Beachten Sie, dass Zelle A14 den Wert 2 enthält.
Dies sagt uns, dass die letzte Spalte, die in diesem speziellen Blatt verwendet wird, Spalte 2 ist.
Beachten Sie außerdem, dass dieses Makro immer die zuletzt verwendete Spalte findet, wenn Sie leere Spalten vor einer verwendeten Spalte haben.
Angenommen, wir führen das Makro für den folgenden Datensatz aus:
Zelle A14 enthält den Wert 5 , da es sich um die letzte Spalte mit Werten handelt.
Beispiel 2: Suchen Sie mit VBA die letzte Spalte und zeigen Sie die Ergebnisse im Meldungsfeld an
Angenommen, wir möchten stattdessen die zuletzt verwendete Spalte in einem Blatt finden und die Spaltennummer in einem Meldungsfeld anzeigen.
Dazu können wir das folgende Makro erstellen:
Sub FindLastColumn()
Dim LastCol As Long
LastCol=Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
MsgBox " Last Column: " & LastCol
End Sub
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:
Das Meldungsfeld teilt uns mit, dass die letzte im Blatt verwendete Spalte Spalte 2 ist.
Hinweis : Die vollständige Dokumentation für die VBA- Find- Methode finden Sie hier .
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in VBA ausführen:
VBA: So berechnen Sie den Durchschnittswert des Bereichs
VBA: So zählen Sie die Anzahl der Zeilen im Bereich
VBA: So entfernen Sie doppelte Werte im Bereich