O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Microsoft Excel VBA - Das Praxisbuch. Für Microsoft Excel 2007-2013.

Book Description

Tipps und Tools für die VBA-Praxis. Für Programmierer mit Grundkenntnissen.

Table of Contents

  1. Vorwort
    1. Der Grobaufbau
    2. Der Detailaufbau
    3. Beispieldateien
    4. Sonstige Angebote rund um VBA
      1. Die Repository 2013
      2. VBA-Entwicklertage
      3. XING-Gruppe – VBA-Entwickler Treff
    5. Über die Autoren
  2. 1. Daten aus verschiedenen Quell-Dateien einlesen
    1. Daten aus anderen Excel-Mappen importieren
      1. Daten aus einem Tabellenblatt kopieren
      2. Daten selektiv aus einer Excel-Mappe übertragen
        1. Daten zeilenweise übertragen
        2. Daten per Autofilter filtern
        3. Daten über ein Array einlesen
      3. Daten per ADO aus einer Excel-Mappe importieren
        1. Daten aus einem Excel-Blatt komplett per ADO importieren
        2. Daten beim Import aus einem Excel-Blatt filtern, verdichten und sortieren
          1. Daten sortiert importieren
          2. Daten gefiltert importieren
          3. Daten verdichtet importieren
    2. Text- und CSV-Dateien einlesen
      1. Text- und CSV-Dateien als Tabellenblatt öffnen
        1. Eine mit Semikolon getrennte CSV-Datei öffnen
        2. Eine mit Tabstopp getrennte Textdatei öffnen
        3. Eine Textdatei mit festen Spaltenbreiten öffnen
      2. Textdateien importieren
        1. Eine Datenverbindung zu einer Textdatei mit Trennzeichen herstellen
        2. Eine Datenverbindung zu einer Textdatei mit festen Spaltenbreiten herstellen
      3. Textdateien zeilenweise einlesen
      4. Per ADO auf Textdateien zugreifen
        1. Auf Textdateien mit Semikolon-Trennzeichen per ADO zugreifen
        2. Auf Textdateien mit Tabstopp-Trennzeichen per ADO zugreifen
        3. Auf Textdateien mit fester Spaltenbreite per ADO zugreifen
    3. XML-Dateien einlesen
      1. Eine XML-Datei als Mappe öffnen
        1. Eine XML-Datei schreibgeschützt öffnen
        2. Eine XML-Datei in eine XML-Tabelle importieren
      2. XML-Verknüpfungen erstellen und nutzen
        1. XML-Daten in ein Listenobjekt importieren
          1. Die Verbindung herstellen und das Listenobjekt einrichten
          2. Eine XML-Datei in ein bestehendes Listenobjekt importieren
        2. XML-Daten in einzelne Zellen importieren
          1. Die Verbindung herstellen und die Zuordnungen einrichten
          2. Eine XML-Datei in die Vorlage importieren
      3. Eine XML-Datei mit VBA auslesen
        1. Eine komplette XML-Datei auslesen
        2. Einzelne Zweige einer XML-Datei gezielt auslesen
        3. Filtern mit XPath
    4. Datei-Pfade bestimmen
      1. Verzeichnisse und Dateien vom Benutzer wählen lassen
        1. Eine einzelne Datei auswählen
        2. Mehrere Dateien auswählen
        3. Mehrere Dateitypen zur Auswahl zulassen
        4. Startordner festlegen
        5. Nur bestimmte Dateinamen zur Auswahl geben
        6. Einen Ordner auswählen
      2. Verzeichnisse automatisiert abarbeiten
        1. Alle in einem Ordner enthaltenen Dateien verarbeiten
        2. Alle Unterordner auslesen
  3. 2. Datenbanken anzapfen
    1. ADO und DAO
    2. Auf Datenbanken per ADO zugreifen
      1. Eine Verbindung zur Access-Datenbank aufbauen
      2. Eine Verbindungszeichenfolge erstellen
      3. Abfragen mithilfe des Connection-Objekts ausführen
      4. Abfragen mit Parametern mithilfe des Command-Objekts ausführen
      5. Mit dem Recordset-Objekt arbeiten
        1. Daten mithilfe eines Recordsets abfragen
        2. Das Recordset ausgeben
          1. Inhalt des Recordsets als formatierten Text ausgeben
          2. Den Inhalt des Recordsets an ein Array übergeben
          3. Einzelne Felder auslesen
        3. Durch das Recordset navigieren
        4. Die Anzahl der gefundenen Datensätze ermitteln
        5. Das Recordset sortieren
        6. Das Recordset durchsuchen
        7. Das Recordset filtern
    3. Auf andere Datenbanktypen zugreifen
      1. Daten aus einer MySQL-Datenbank abfragen
      2. Daten aus einer Oracle-Datenbank abfragen
    4. Grundlegende SQL-Kommandos anwenden
      1. Daten mit SQL abfragen
        1. Alle Daten einer Tabelle abfragen
        2. Einzelne Felder einer Tabelle abfragen
        3. Felder zu einem Feld zusammenfassen
        4. Datensätze bei der Abfrage filtern
        5. Platzhalter einsetzen
        6. Ein Datum mit den Funktionen DAY, MONTH, YEAR zerlegen
        7. Daten sortieren
        8. Daten gruppieren
        9. Berechnungen ausführen
        10. Duplikate entfernen
        11. Daten aus mehreren Tabellen abfragen
        12. Komplexere Abfragen
      2. Daten mit SQL manipulieren
        1. Neue Datensätze anfügen
        2. Datensätze ändern
        3. Datensätze löschen
  4. 3. Daten aus dem Internet importieren
    1. Internetdaten mithilfe einer Webabfrage importieren
    2. Webservices nutzen
  5. 4. Benutzeroberflächen für die Datenerfassung erstellen
    1. Die einzelnen Steuerelemente richtig einsetzen
      1. Das Label-Steuerelement
      2. Das Textfeld
      3. Das Optionsfeld
      4. Der Rahmen
      5. Das Kombinationsfeld (ComboBox)
      6. Das Kontrollkästchen (CheckBox)
      7. Das Listenfeld (ListBox)
      8. Die Schaltfläche (Button)
      9. Die Multiseite
      10. Das Umschaltfeld (ToggleButton)
      11. Das Drehfeld (SpinButton)
      12. Das Anzeige-Steuerelement (Image)
    2. Usereingaben validieren
      1. Usereingaben beschränken
      2. Eingaben in Kombinationsfeldern validieren
    3. Steuerelemente über Klassen erweitern und Codes mehrfach verwendbar machen
      1. Vorüberlegungen zu den Steuerelementen
      2. Die Klasse für das Textfeld erstellen
      3. Die erste Ereignisbehandlung in der Klasse erstellen
      4. Das Steuerelement testen
      5. Die Textfeldklasse ausbauen
      6. Das AfterUpdate-Ereignis über einen Umweg ebenfalls von der Klasse behandeln lassen
      7. Die Datenbank als Datengrundlage einbinden
      8. Eine Blätterfunktion in der UserForm ergänzen
      9. Änderungen in der Datengrundlage speichern
      10. Eine Klasse für das Kombinationsfeld erstellen
      11. Schließen der Verbindung zur Datenquelle
  6. 5. Werte auf Plausibilität prüfen
    1. Operatoren für Vergleiche verwenden
      1. Die grundlegenden Vergleichsoperatoren anwenden
      2. Zeichenfolgen mithilfe des Like-Operators prüfen
    2. Werte anhand von Prüffunktionen überprüfen
      1. IsNumeric
      2. IsDate
      3. IsError
      4. IsEmpty
    3. Duplikate finden oder entfernen
      1. Duplikate finden
        1. Werte in einem Tabellenblatt finden
        2. Werte in einem Array finden
        3. Werte in einem ADO-Recordset suchen
      2. Duplikate in Tabellen aufspüren und entfernen
        1. Duplikate in einer Tabelle finden und markieren
        2. Duplikate aus einer Tabelle entfernen
        3. Eine Unikatsliste aus einer Tabelle erstellen
          1. Eine Unikatsliste mithilfe des erweiterten Filters erstellen
          2. Eine Unikatsliste mit ADO erstellen
    4. Reguläre Ausdrücke für komplexe Zeichenfolgenprüfungen verwenden
      1. Funktionen für die Arbeit mit regulären Ausdrücken erstellen
      2. Bestimmte Zeichenfolgen in Texten finden
      3. Zeichenkürzel verwenden
      4. Wiederholungen von Zeichen und Zeichengruppen ausdrücken
      5. Spezielle Zeichen nutzen
      6. Eine E-Mail-Adresse prüfen
      7. Zeichenfolgen aus Texten extrahieren
  7. 6. Arbeiten mit Arrays, Dictionarys und Collections
    1. Arbeiten mit Arrays
      1. Aktionen im Arbeitsspeicher ausführen lassen
      2. Bestimmte Daten aus einer Tabelle löschen
      3. Werte anhand mehrerer Kriterien herausfiltern
      4. Daten konvertieren
      5. Daten suchen und ersetzen
      6. Inhalte finden und dokumentieren
        1. Kommentare in einer Tabelle aufspüren und dokumentieren
        2. Benannte Zellen in der Arbeitsmappe aufspüren
      7. Rechnen mit Arrays
        1. Summe bilden in einem Array über die Standardfunktion SUMME
        2. Eine eigene Summe bilden in einem Array
        3. Den Mittelwert aus einem Array über eine Tabellenfunktion bilden
        4. Den Mittelwert aus einem Array selbst bilden
        5. Bestimmte Spalten aus einem Array extrahieren
    2. Arbeiten mit dem Dictionary-Objekt
      1. Daten verdichten
      2. Bedingte Summierung mit mehreren Kriterien
      3. Eine Unikatsliste erstellen
      4. Anzahl von Bestellungen ermitteln
      5. Doppelte Daten in einem Bereich ermitteln
    3. Arbeiten mit Auflistungen
      1. Unikate Einträge über eine Auflistung bilden
      2. Eine Auflistung aus einer Tabelle befüllen
  8. 7. Daten verarbeiten über ADO
    1. Der Einsatz von ADO
    2. Daten filtern und in einer anderen Tabelle ausgeben
    3. Umsätze nach Datum verdichten
    4. Umsätze nach Datum und Warengruppe verdichten
    5. Daten aus einer Arbeitsmappe beziehen, ohne diese zu öffnen
    6. Daten löschen
    7. Top-Werte ermitteln
    8. Tabellen zusammenfassen
    9. Daten per ADO verändern
    10. Zugriff auf eine Access-Datenbank
  9. 8. Typische Verarbeitungsaufgaben aus der Praxis
    1. Daten verteilen
      1. Die Tabellen entfernen
      2. Die Verteilung der Zeilen auf die Tabellen
      3. Die Plausibilität prüfen
      4. Der Export der Tabellen
    2. Daten zusammenstellen
      1. Unikate Kunden zusammenstellen
      2. Daten zusammenstellen
    3. Daten konsolidieren
      1. Die Erstellung des Reports I
      2. Die Erstellung des Reports II
    4. Daten bereinigen
    5. Daten aktualisieren
    6. Daten verarbeiten im Batch
    7. Daten suchen
    8. Dateien auflisten
    9. Daten kennzeichnen
      1. Doppelte Daten kennzeichnen (Standard)
      2. Doppelte Daten kennzeichnen (Erweiterung)
      3. Extremwerte in einer Tabelle aufspüren
      4. Top-10-Werte aus einem Bereich ermitteln
      5. Wochenenden kennzeichnen
      6. Bestimmte Datumswerte ermitteln
        1. Den letzten Tag eines Monats ermitteln
        2. Den letzten Werktag eines Monats ermitteln
        3. Das Erstellungsdatum einer Mappe abfragen
        4. Noch mehr Dokumenteigenschaften abfragen
    10. Daten löschen
      1. Daten entfernen – Variante 1
      2. Daten entfernen – Variante 2
      3. Daten entfernen – Variante 3
  10. 9. Verarbeiten von Daten mit Excel-Bordmitteln via VBA
    1. Die Tabellenfunktionen von Excel einsetzen
      1. Ausblenden leerer Zeilen
      2. Doppelte Werte löschen
      3. Fußzeilen-Kosmetik
      4. Tabellenfunktionen in einem Diagramm anwenden
      5. Letztes Datum finden und kennzeichnen
      6. Rangfolge berechnen und sortieren
    2. Matrixformeln in der Programmierung nutzen
      1. Werte bedingt zählen
      2. Werte bedingt summieren
      3. Mittelwert ohne Berücksichtigung von Nullen bilden
      4. Extremwerte bedingt bilden
      5. Den am meisten genannten Wert ermitteln
    3. Daten mit dem Datenfilter verarbeiten
      1. Der Einsatz des AutoFilters
        1. Daten in einer Tabelle filtern
        2. Nur Texte filtern
        3. Daten filtern, die eine Zeichenfolge enthalten
        4. Der Top-10-Filter
        5. Mehrere Filterkriterien übergeben
        6. Mehrere Datenfilter einsetzen
        7. Gesetzte Filter besser anzeigen lassen
      2. Daten mit dem Spezialfilter verarbeiten
        1. Unikatsliste erstellen
        2. Daten über einen Kriterienbereich filtern
        3. Mehrere Spalten über einen Kriterienbereich filtern
        4. Wildcards im Spezialfilter einsetzen
        5. Filtern von Datumswerten in einem Zeitraum
    4. Teilergebnisse verwenden
    5. Pivot-Tabellen einsetzen
      1. Pivot-Tabelle erstellen
      2. Pivot-Tabellen nachträglich erweitern
      3. Pivot-Tabellen formatieren
      4. Das Seitenfeld einer Pivot-Tabelle ansprechen
      5. Datenschnitte einfügen
  11. 10. Automatisierungsmakros
    1. Formelzellen in einer Tabelle automatisch sperren
    2. Alle Zellen ermitteln, die eine bestimmte Zeichenfolge enthalten
    3. Zeichenfolgen mehrfach aufspüren und kennzeichnen
    4. Die Tabellenfunktion SVERWEIS durch ein Makro ersetzen
    5. Bestimmte Zeilen in einer Tabelle automatisch gruppieren
    6. Alle Tabellen einer Mappe schützen/entsperren
    7. Eine einheitliche Kopf- und Fußzeile erstellen
    8. Tabellen alphabetisch sortieren
    9. Versteckte Tabellen einblenden
    10. Einheitlichen Zoom für alle Tabellen einstellen
    11. Alle Tabellen als separate Mappen speichern
    12. Eine Mehrfachsuche in einer Tabelle durchführen
    13. Inhaltsverzeichnis aller Tabellen einer Mappe erstellen
    14. Alle verknüpften Mappen automatisch öffnen
    15. Eine Jahresmappe mit zwölf Monaten automatisch anlegen
    16. Einen Text in einer kompletten Mappe suchen und ersetzen
    17. Ein Jahresverzeichnis automatisch anlegen
    18. Alle Quellcodes aus einer Mappe entfernen
    19. Einen eigenen Kalender auf Knopfdruck erzeugen
    20. Ausgeblendete Zeilen und Spalten einblenden
    21. Verknüpfungen aus Arbeitsmappen entfernen
    22. Fehlerhafte Namen in einer Arbeitsmappe löschen
    23. Sonstige Aufräumarbeiten
      1. Gültigkeitsprüfungen entfernen
      2. Bedingte Formatierungen entfernen
      3. Kommentare entfernen
      4. Druckbereich aufheben
      5. Seitenumbrüche entfernen
      6. Gitternetzlinien ausblenden
      7. Kopf- und Fußzeilen leeren
      8. Leere Tabellen aus Arbeitsmappen entfernen
      9. Rahmen entfernen
      10. Leere Zeilen in einem Bereich entfernen
      11. Leere Spalten in einem Bereich entfernen
      12. Bestimmte Zeichenfolgen ersatzlos entfernen
    24. Nützliche Prüffunktionen
      1. Prüfen, ob eine Tabelle geschützt ist
      2. Prüfen, ob eine Zelle eine Gültigkeitsregel beinhaltet
      3. Prüfen, ob eine Zelle einen Kommentar enthält
      4. Prüfen, ob ein bestimmter Name in der Mappe verwendet wird
      5. Prüfen, ob ein VBA-Projekt geschützt ist
      6. Prüfen, ob eine VBA-Bibliothek eingebunden ist
      7. Prüfen, ob es in einer Tabelle Formeln gibt
      8. Prüfen, ob eine Tabelle existiert
      9. Prüfen, ob eine Tabelle leer ist
      10. Prüfen, ob in einem Bereich verbundene Zellen vorkommen
      11. Prüfen, ob eine bestimmte Datei vorliegt
      12. Prüfen, ob ein vorgegebener Bereich leer ist
      13. Prüfen, ob eine Office-Anwendung gestartet ist
      14. Prüfen, ob ein Wert mehrfach vorkommt
  12. 11. Export von Excel-Mappen und Tabellen
    1. Aktive Tabelle als neue Arbeitsmappe ablegen
    2. Bestimmte Tabelle als Arbeitsmappe speichern
    3. Bestimmte Tabellen in einer neuer Mappe ablegen und verlinken
    4. Tabellen über Array kopieren (statisch)
    5. Tabellen über Array kopieren (dynamisch)
    6. Exportieren einer Tabelle in einem Intervall
    7. Gefilterte Daten in neuer Mappe speichern
    8. Alle Tabellen als separate Arbeitsmappen ablegen
    9. Diagrammobjekt als Grafikdatei exportieren
    10. Alle Diagramme als Grafiken ablegen
    11. Bereiche übertragen
      1. Normales Kopieren und Einfügen eines Bereichs
      2. Direktes Übertragen
      3. Bereich in Datenfeld und von dort aus in die Tabelle
    12. Gruppierte Tabellen exportieren
    13. Tabellen aus allen geöffneten Arbeitsmappen kopieren
    14. Eine Tabelle einer Arbeitsmappe austauschen
    15. Bereich mit Formeln übertragen
    16. Tabellen und Mappen drucken
      1. Aktive Tabelle mit Gitternetz ausdrucken
      2. Druckeinstellungen für eine Tabelle vornehmen
      3. Selektierte Tabellen drucken
      4. Alle Tabellen einer Mappe drucken
      5. Aktuelle Arbeitsmappe ausdrucken
      6. Alle Arbeitsmappen aus einem Verzeichnis drucken
    17. Modul ausdrucken
    18. Das Druckereignis einsetzen
      1. Drucken für bestimmte Anwender deaktivieren
  13. 12. Export in Textdateien
    1. Textdateien erstellen
      1. Textdatei über Open, Print und Close erstellen
      2. Textdatei über das Filesystem-Objekt erstellen
    2. Tabelle als Textdatei abspeichern
      1. Tabelle Zeile für Zeile exportieren
      2. Tabelle mit SaveAs exportieren
    3. Alle Tabellen als CSV exportieren
    4. Aktuelle Tabelle über Array exportieren
    5. Alle gefilterten Daten in eine Textdatei schreiben
    6. Tabellenbereich überwachen und Änderungen dokumentieren
    7. Alle Formeln einer Mappe dokumentieren
    8. Module sichern
  14. 13. Export/Zusammenspiel mit anderen Office-Anwendungen
    1. Excel-Daten nach PowerPoint exportieren
      1. Bereich aus Excel in eine neue Präsentation einfügen
      2. Bereich aus Excel in eine bestehende Präsentation einfügen
      3. Excel-Bereich verknüpft in eine neue Präsentation integrieren
      4. Diagrammobjekte in eine Präsentation exportieren
    2. Excel-Daten nach Word exportieren
      1. Excel-Bereich in Dokument exportieren
      2. Excel-Tabelle in ein leeres Dokument überführen
      3. Markierten Bereich einer Excel-Tabelle in ein Dokument exportieren
      4. Bereich als Grafik an eine bestimmte Stelle eines Dokuments einfügen
      5. Über ein Dialogfeld Excel-Daten in eine Word-Vorlage exportieren
    3. Excel-Daten nach Outlook exportieren
      1. Kontaktdaten aus Excel nach Outlook exportieren
      2. Termine aus Excel in den Outlook-Kalender schieben
      3. Aktive Tabelle aus Excel heraus versenden
      4. Aktive Tabelle als Anhang aus Excel heraus versenden
      5. Aktive Arbeitsmappe per E-Mail versenden
      6. Alle Dokumente aus einem Verzeichnis per E-Mail versenden
    4. Excel im Zusammenspiel mit Access
      1. Toolfrage und Randbedingungen
      2. Anforderungen an das Tool
      3. Die Umsetzung der Kernfunktionen
        1. Befüllung der Userform mit den wichtigsten Daten
        2. Suche nach Therapeut über das Kürzel/den Patientennamen
        3. Suche nach Datum
        4. Termine erfassen
        5. Änderung von Terminen
        6. Termin löschen
        7. Felder löschen
        8. Tagesplan erstellen
        9. Abendliste erstellen
    5. Excel im Zusammenspiel mit SQL Server
      1. Die Voraussetzungen
      2. Verbindung zu SQL Server herstellen
      3. Die einzelnen Funktionen des Tools
        1. Postleitzahlen einlesen und in Excel zur Anzeige bringen
        2. Eine teilqualifizierte Suche durchführen
        3. Weitere Daten hinzufügen oder ändern
        4. SQL-Daten in Tabelle einlesen
        5. SQL-Datenbank über eine Excel-Tabelle befüllen
        6. Über Wikipedia aktuelle Daten zu einem Ort abfragen
  15. 14. Export via PDF und XML
    1. Der Export über PDF
      1. Erstellen von PDF-Dateien über Nicht-Microsoft-Anbieter
      2. PDF-Erstellung direkt aus Excel heraus durchführen
        1. Aktive Arbeitsmappe als PDF ausgeben
        2. Alle Tabellen separat als PDF ausgeben
    2. Erstellen einer XML-Datei aus einer Excel-Tabelle
      1. Eine neue XML-Datei erstellen
      2. Eine bestehende XML-Datei erweitern
      3. Daten einzelner Zweige ändern
  16. Stichwortverzeichnis
  17. Copyright