Excel Spaltenbuchstaben ermitteln

In VBA wird im Allgemeinen nicht der Spaltenbuchstabe, sondern die Spaltennummer verwendet. Spalte A entspricht der Spaltennummer 1, Spalte B der Spaltennummer 2, Spalte C der Spaltennummer 3 usw.

Möchten Sie nun aus einer Spaltennummer wieder den Spaltenbuchstabe ermitteln gibt es hierfür verschiedene Ansätze, die je nach Verwendungszweck mehr oder weniger geeignet sind.

Fehlerhafter VBA Code auf der Microsoft Support Seite

Im Internet gibt es allerdings auch Lösungsansätze, die nicht ungeprüft verwendet werden sollten. So stellt z.B. selbst Microsoft auf einer Support Seite einen fehlerhaften Algorithmus für die Ermittlung des Spaltenbuchstaben vor.

Zunächst einmal ist dieser generell nur auf zwei Stellen ausgelegt. Seit der Excel 2007 sind inzwischen jedoch 16.384 Spalten bis zum Spaltenbuchstabe XFD vorhanden. Um alle Spaltenbuchstaben ermitteln zu können muss also in jedem Fall ein Algorithmus genutzt werden, der dreistellig die Spaltennummer in den jeweiligen Spaltenbuchstabe(n) umwandeln kann. Davor gab es einen Spaltenbereich der nur 256 Spalten bis Spalte IV unterstützte.

Aber auch in diesem Fall hätte der Algorithmus auf der Microsoft Seite Fehler produziert. Der erste Fehler tritt nämlich bereits bei Spalte 53 (BA) auf. Hier wirft der Microsoft Alogrithmus A[ aus. Mit jedem Durchlauf von A bis Z verschiebt sich fortan der Fehler um eine weitere Spalte (CA, CB / DA, DB, DC / EA, EB, EC, ED / …). Ab Spalte 4508 (FQJ) erzeugt das Makro dann sogar die erste Fehlermeldung.

Excel VBA Spaltenbuchstabe aus Zahl ermitteln

Nachfolgend nun zwei Lösungsvorschläge, die für alle 16.384 Spalten aus der Spaltennummer den Excel Spaltenbuchstaben ermitteln.

weiterlesen

 

Wissenswert: Sverweis Funktion und Makro Alternative

Die Sverweis Formel-Funktion ist eine der beliebtesten Excel Funktionen überhaupt. Die Nutzung kann allerdings auch Probleme bereiten und die Performance bei großen Tabellen stark beeinträchtigen. In diesem Beitrag erfahren Sie, wofür Sie die Sverweis-Funktion nutzen können, worauf Sie achten müssen und schließlich was alternativ Makros leisten können. Dazu stelle ich Ihnen zwei Makros vor. Das erste Makro nutzt die Sverweis-Tabellenblatt-Funktion vlookup() in VBA und bietet somit alle Möglichkeiten der Formel-Funktion. Das zweite Makro stellt die Funktionsweise in ähnlicher Weise nach und bietet im Praxiseinsatz noch weitere Möglichkeiten, die mit der Sverweis-Funktion sonst nicht zu realisieren sind.

Sverweis-Formel im Tabellenblatt
Mit der Sverweis-Funktion können Sie grundsätzlich fehlende Daten aus einer anderen Tabelle zuspielen. Haben Sie zum Beispiel eine Liste mit Postleitzahlen bei denen die Orte fehlen können Sie über einen Sverweis in einer zusätzlichen Spalte die Orte in Abhänigkeit zur Postleitzahl hinzufügen. Voraussetzung ist, dass Sie über ein Postleitzahlenverzeichnis verfügen in denen zu allen Postleitzahlen die Orte gespeichert sind. Sie benötigen also eine Datenbasis aus der Sie die fehlenden Werte zuspielen können. Es sind dabei allerdings noch drei Punkte unbedingt zu beachten.

weiterlesen

 

Straße und Hausnummer mit Excel trennen Teil 1 (Variante ohne Makro)

Ein häufiges Problem ist die Übernahme von Daten, die nicht in der gewünschten Datenqualität vorliegen. Im folgenden Beitrag stelle ich eine Möglichkeit vor, wie Sie die in einer Spalte vorliegende Anschrift bestehend aus Straße und Hausnummer mit Excel trennen können und in zwei Spalten übernehmen. Die Lösung dieser Problematik ist sogar ganz ohne den Einsatz eines VBA Makros mit den Standard-Funktionen in Excel möglich.

Vorbereitung und Datenqualität
Ich gehe für den nachfolgenden Lösungsweg davon aus, dass die Anschriften bestehend aus Straßenname und Hausnummer untereinander in Spalte A stehen. Die Spalten B bis F werden im folgenden für Hilfsspalten und die Ergebnisse benötigt, sollten daher vollständig leer sein. Am Ende des Beitrags steht eine Beispieldatei mit den Formeln zum Download als Muster bereit.

Straße Hausnummer trennen mit Excel

Insgesamt benötigen Sie 5 Formeln um ans Ziel zu kommen. Eine Besonderheit gibt es am Ende noch für Sonderformen der Hausnummer zu berücksichtigen. Darauf komme ich am Ende des Beitrags nochmal zurück. Ich gehe für die folgenden Schritte zunächst von der idealen Datenlage (z.B. “Hartenthaler Str. 22” oder “An der Promenade 6”) aus. Es können mehrere Leerzeichen im Straßenname vorhanden sein und es besteht zudem immer ein Leerzeichen zur Abgrenzung der Hausnummer.

weiterlesen

 

Dateien aus einer Excel-Arbeitsmappe öffnen

Gelegentlich werden Sie für eine bestimmte Aufgabe verschiedene Dateien benötigen. Das kann z.B. vorkommen wenn Sie ein Excel-Tool nutzen, dass die Bearbeitung, Datenerfassung und/oder die Erstellung von Schriftwechseln übernimmt und hierfür die Daten aus einer extern gespeicherten Adressliste, Anbieterliste etc. über ein Makro eingelesen und verarbeitet werden soll.

Heute stelle ich Ihnen zwei kleine VBA-Bausteine vor mit denen Sie während eines Makroablaufs an einer beliebigen Stelle diesen Vorgang in den automatisierten Ablauf integrieren können.

weiterlesen

 

Spalten und Zeilen in Excel Tabellen ohne großen Aufwand tauschen

Wenn Sie eine Tabelle in Excel haben bei der Sie die Spaltenüberschriften an der Stelle der Zeilenüberschriften und umgekehrt haben wollen, können Sie das ganz einfach ohne großen Aufwand mit einer Excel-Standardfunktion lösen. Das geht sehr schnell und ist wesentlich einfacher, als ein entsprechendes Makro zu programmieren.

Allerdings müssen Sie die Funktion erst einmal finden. Die Lösung dieses Problems ist über das Fenster „Inhalte einfügen“ und der darin enthaltenen Funktion „Transponieren“ zu finden.



Abbildung 1
Das Fenster „Inhalte einfügen“ können Sie entweder über „Bearbeiten“ in der Menüleiste oder über drücken der rechten Maustaste im Tabellenbereich auswählen.

weiterlesen

 

Zahlenwerte richtig erkennen

Sie kennen vielleicht das Problem. Sie haben eine Tabelle erhalten, in der sich Zahlenwerte befinden mit denen nicht gerechnet werden kann. Die Ursachen sind dafür vielfältig. Entweder sind die Zellen als Text formatiert, vor oder hinter der Zahl stehen noch Leerzeichen oder die Zahl ist mit einem Punkt an der Stelle zu den Nachkommastellen getrennt.

Insbesondere bei großen Tabellen wollen Sie natürlich nicht Zelle für Zelle bereinigen. Dieses Problem können Sie schnell mit, aber auch ohne Makro lösen.

Am einfachsten lässt sich das Problem mit dem Punkt statt Komma lösen. Hierfür markieren Sie den entsprechenden Zellbereich (In der Beispieldatei der Bereich F3:F15) und rufen über das Menü “Bearbeiten”, “Ersetzen” auf. Geben Sie nun unter “Suchen nach:” einen Punkt und bei “Ersetzen durch:” ein Komma ein. Anschließend klicken Sie auf “Alle ersetzen” und im markierten Bereich werden alle Kommas durch jeweils einen Punkt ersetzt.

weiterlesen