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

 

Per VBA-Makro eine Email mit Outlook versenden

Email versenden VBA

Sie möchten einen Bericht aus einer Exceltabelle erstellen und anschließend per Email versenden? Auch der Versand einer kompletten Exceldatei oder eines bestimmten Tabellenblatts ist relativ einfach mit VBA realisierbar. Mit dem nachfolgenden Musterbeispiel zeige ich Ihnen wie Sie mit Hilfe eines VBA-Codes eine Email versenden können. Voraussetzung für die Nutzung ist, Sie haben neben Microsoft Excel auch das Programm Microsoft Outlook installiert und darin ein Emailkonto eingerichtet.

Teil 1: Per VBA-Makro eine Email mit Outlook versenden
Teil 2: Mit VBA Email versenden ohne Outlook

Weitere Voraussetzung, im VB-Editor muss in der Exceldatei eine der beiden Objektbibliotheken aktiviert sein:

  • Microsoft Outlook 15.0 Object Library
  • Microsoft 15.0 Object Library

Die Nummer 15.0 steht hierbei für die genutzte Office-Version (15.0 entspricht z.B. Office 2013).

Nun zum eigentlichen VBA-Code. Hier gibt es einige Möglichkeiten den Versand individuell zu gestalten. In den beiden folgenden Makros wird die Email erstellt und zunächst angezeigt (1. VBA-Code), bzw. automatisch versendet (2. VBA-Code):

Weiterlesen

 

Dateinamen eines Verzeichnisses mit VBA auslesen und in Excel schreiben

Mit einem kleinen Makro können Sie ganz bequem sämtliche Dateinamen inklusive der Dateiendungen in Excel schreiben. Das nachfolgende Makro brauchen Sie hierfür lediglich in ein Modul Ihrer Exceldatei hinzufügen. Alternativ können Sie auch die im Anschluss an diesen Beitrag anghängte Musterdatei nutzen um Dateinamen mit VBA auslesen zu können.

Bevor Sie starten gibt es zwei Wichtige Punkte zu beachten. Vor dem Ausführen des Makros müssen Sie den Ordnername im VBA Code noch abhändern. Im Beispiel würde das Makro ansonsten im Laufwerk „C:\“ den Ordner mit dem Namen „Ordnername“ suchen und falls vorhanden die Dateien dieses Ordners in Spalte A ab Zeile 1 auflisten. Sofern der Ordnerpfad nicht vorhanden ist, erhalten Sie die Fehlermeldung „Laufzeitfehler ’76‘: Pfad nicht gefunden“.

Weiterlesen

 

Stolperstein Formatierung in UserForm TextBox

In programmierten Formularen (UserForm) kommen häufig Eingabefelder in Form einer TextBox zur Anwendung. Meistens sollen die darüber eingegebenen Werte umgehend weiter verarbeitet werden. Und hier gilt es ggf. gleich von Beginn an Fehler zu vermeiden. Der Inhalt einer TextBox wird nämlich ohne weiteres Eingreifen grundsätzlich immer als String behandelt. Sollen in einer TextBox jedoch Zahlen erfasst werden, die anschließend zum Beispiel miteinander verglichen oder summiert werden sollen, müssen diese zuvor umformatiert werden.

Was passiert, wenn die Inhalte der TextBox-Felder nicht formatiert werden? Den Fehler wird man unter Umständen nicht sofort merken.

TextBox Eingabefelder in Userform

Unterschiede in der Sortierung von Texten und Zahlen:
Angenommen Sie haben eine UserForm in der die Eingabe einer Zahl „von“ und einer Zahl „bis“ erfolgen soll. Anschließend möchten Sie prüfen, ob die Eingabe korrekt erfolgt ist, also die Zahl „von“ wirklich kleiner als die Zahl „bis“ ist.

Weiterlesen

 

Excel Fußball Bundesligatippspiel 2016/2017

Für die neue Saison 2016/2017 gibt es das Tippspiel zunächst für die 1. und 2. Bundeliga. Weitere Europäische Ligen werden, wie in den letzten Jahren noch folgen. Geplant sind die Ligen Premier League (England), Primera División (Spanien), Serie A (Italien), Ligue 1 (Frankreich) und SüperLig (Türkei). Bedingt durch die Europameisterschaft in Frankreich und dem erhöhten Zeitaufwand aufgrund der Änderung des Turniermodus sind noch nicht alle Tippscheine fertiggestellt.

Gegenüber dem Vorjahr gibt es auch wieder einige zusätzliche Features und Optimierungen in der Verarbeitung der Tippscheine.

Weiterlesen

 

Excel EM Tippspiel für die Europameisterschaft 2016 in Frankreich

In zwei Monaten startet die Fußball Europameisterschaft in Frankreich. Damit Sie auch dieses Jahr wieder mit Freunden, Kollegen und der Familie die Spiele tippen können, stelle ich heute das kostenlose Excel EM Tippspiel vor.

Spielplan Euro 2016

Gegenüber dem Excel Tippspiel zur UEFA EURO 2012 hat es zwangsläufig einige wichtige Änderungen gegeben. Statt 16 Nationalmannschaften starten in Frankreich 24 Teams. Aus diesem Grund wird es in Frankreich erstmals ein Achtelfinale geben, wodurch auch die vier besten Dritten der sechs Gruppen die Vorrunde überstehen können. Diese Reglement Änderung wurde über eine Dropdownbox im Achtelfinale für die Auswahl der Drittplatzierten realisiert. Die Mannschaften stehen erst vollständig zur Auswahl, sobald die Vorrunde abgeschlossen ist.

Weiterlesen

 

Vorankündigung: UEFA EURO 2016 Excel-Tippspiel

Excel WM Tippspiel 2022

UPDATE 11.04.2016: Hier geht es zum Download.


In diesem Sommer steht das nächste Fußball-Großereignis, die Europameisterschaft in Frankreich, an. Wie auch für die vergangenen Turniere wird es auch dieses Jahr eine kostenlose Excel-Tippspiel Vorlage für Tippgemeinschaften geben.

Welche Neuerungen es geben wird ist aktuell noch nicht endgültig geklärt. Auf jeden Fall muss natürlich die Modus-Änderung gegenüber der Europameisterschaft 2012 umgesetzt werden. Es gibt darüber hinaus noch diverse Ideen, die Ergebnis-Liste der Tipper zu erweitern und optimieren. Mehr wird an dieser Stelle noch nicht verraten. Es bleibt auf jeden Fall bei der vollautomatischen Tippscheinauswertung und der unlimitierten Mitspielerzahl.

Weiterlesen

 

Mit VBA nach Datum filtern

Datum filtern

Ziemlich banal ist eigentlich der heutige VBA Tipp. Allerdings ist das Internet voll von Fragen zu diesem Thema. Und die Lösungsvorschläge funktionieren mal besser, mal schlechter. Meistens sind es improvisierte Ideen, die das eigentliche Problem umgehen (z.B. Umformatieren in einen String etc.). Die Lösung dieses alltäglichen Problems bereit daher offensichtlich so manches Kopfzerbrechen. Gerade auch deshalb weil der Makro Rekorder das Problem nicht lösen kann. Gemeint ist das Ansteuern eines Autofilters über ein VBA Makro wenn eine Datumsspalte gefiltert werden soll. Nachfolgend stelle ich Ihnen jeweils einen passenden VBA Code vor um eine Datumsspalte nach den gängien Varianten:

  • Datum ist gleich
  • Datum ist größer als
  • Datum ist kleiner als
  • Datum liegt zwischen
  • Datum ist größer als das aktuelle Tagesdatum
VBA Makro Lösung

Grundsätzlich ist bei den nachfolgenden Beispielen zu beachten, dass die zu filternde Spalte im Datumsformat „TT.MM.JJJJ“ vorliegen muss. Ggf. können Sie die Spalte umformatieren, wenn ein anderes Format vorliegt. Sofern eine andere Datums-Variante genutzt werden soll, sind die Makros entsprechend anzupassen. Für die jeweiligen Beispiele wurde das Datum in eine Variable (Datum, Datum1, Datum2) vom Datentyp „Date“ gespeichert. Sie können natürlich auch eine Inputbox, einen Zellwert oder ähnliches als Grundlage für die Filterfunktion verwenden.

Weiterlesen

 

Laufen Excel Makros auf Smartphone und Tablet Apps?

Inzwischen erhalte ich vermehrt Anfragen zu Makros die z.B. auf iOS-Systemen wie dem iPhone oder dem iPad von Apple laufen sollen. Das Smartphone wandelt sich immer mehr zum mobilen Büro. Emails checken und im Internet surfen ist längst üblich. In vielen Unternehmen werden inzwischen auch Office Anwendungen auf mobilen Geräten genutzt.

Aufgrund der Preisentwicklungen auf dem Mobilfunkmarkt auch kein Wunder. Inzwischen gibt es für unter 10 Euro eine Allnet-Flat in alle Mobilfunknetze und das Festnetz, sowie einer 3 GB Internet-Flatrate (z.B. Tarif LTE2000 bei www.deutschlandsim.de). Und das Beste bei diesen Angeboten, inzwischen gibt es sie ohne sich für 24 Monate binden zu müssen. Mindestlaufzeit 1 Monat! Sobald mein 24-Monate-Knebelvertrag im Januar 2016 ausläuft, werde ich mir auch einen monatlich kündbaren Tarif sichern.

Excel Makros auf Smartphones und Tablets nutzen

Aber zurück zu den Anfragen bezüglich Makros, die auf dem Smartphone oder Tablet laufen sollen. Aktuell entwickle ich ausschließlich Makros, die mit Windows Betriebssystemen garantiert kompatibel sind.

VBA Unterstützung in alternativen Office Programmen

Bei anderen Betriebssystemen und alternativen Office-Anwendungen wie z.B. WPS Office, LibreOffice oder Open Office kann die Unterstützung von VBA nicht immer hundertprozentig gegeben sein. Ebenfalls problematisch ist die VBA Unterstützung für Microsoft Office für Mac. Hintergrund ist, dass in unterschiedlichen Office Versionen verschiedene VBA Befehle unterstützt werden. In vielen Fällen liegt das an unterschiedlichen Objekt-Bibliotheken.

Hier kann beim nachträglichen Einbinden der notwendigen Objekt-Bibliotheken die Funktion des Makros ggf. noch gerettet werden. In einigen Fällen müssen jedoch auch VBA Routinen umgeschrieben und in unterschiedlichen Systemen getestet werden. Anfragen zu Programmieraufträgen für iOS oder Android Geräten biete ich daher aktuell nicht an.

 

Zusammenhängende Datensätze farbig hervorheben

Datensätztze farbig hervorheben

Ein häufiges Problem bei großen Datenmengen ist die fehlende Übersichtlichkeit. Excel bietet hier nur für einfache Konstellationen sinnvolle Lösungsansätze. So kann über die Funktion „Als Tabelle formatieren“ zum Beispiel jede zweite Zeile farbig hervorgehoben werden. Dadurch können Sie die Zellen einer Zeile einfacher im Blick behalten. Mehrere zusammenhängende Zeilen hervorheben, ist hiermit allerdings nicht möglich.

Möchten Sie deshalb aus einer großen Datenmenge zusammengehörige Zeilen optisch hervorheben, ist das in der Regel, je nach Größe der Tabelle, mit viel händischer Arbeit verbunden.

Weiterlesen