Excel VBA Eine Sammlung

Dies ist eine Sammlung von Excel VBA Programmen und auch einigen Excelformeln, die mir sinnvoll erschienen.

Inhaltsverzeichnis                                                                   
                                                                                     
Excel / VBA – Eine Sammlung                                                          1
  Abstract                                                                           2
  Excel Lernpfad                                                                     2
Die Excel / VBA Programmierumgebung                                                 11
  Abstract                                                                          11
  Grundlegendes                                                                     11
    Variablen                                                                       11
      Typen                                                                         11
      Scope                                                                         12
    Während des Editierens                                                          12
    Während der Programmausführung                                                  13
      Breakpoints                                                                   13
      Fehlerbehandlung                                                              14
    Gute Programmierpraxis                                                          15
      Seien Sie ein guter Programmierer                                             15
      Gutes Excel und VBA Wissen                                                    15
      Programmierkonventionen                                                       15
      Säubern Sie Makroaufzeichnungen                                               15
      Dokumentieren Sie Ihr Programm ausreichend                                    16
      Testen Sie Ihr Programm gut                                                   16
      Protokollieren Sie Ihre Programmausführung                                    16
      Optimieren Sie Ihr Programm                                                   16
  Systemstatus sichern und zurückschreiben – SystemState Klasse                     17
    Systemstatus Variablen                                                          17
  Programmablauf dokumentieren – Logging Klasse                                     20
    Für und Wider                                                                   20
    Parameter                                                                       21
    Beispielausgabe                                                                 22
    Module                                                                          22
    Klassenmodule                                                                   26
    Exkurs: Logger für PowerShell – Write-Log                                       27
  Exportiere einen Bereich als Grafik – sbExportRange2Picture                       29
    sbExportRange2Picture Programmcode                                              29
  Bereichsnamen anzeigen – sbNamedRanges                                            32
  Excel Version anzeigen – ApplicationVersion                                       33
  Anzahl der Dimensionen eines Arrays – ArrayDim                                    34
  Zellinformationen ausgeben – sbGetCell                                            35
  Nächste Gleitkommazahl – sbNextFloat                                              39
  Aufruf anderer Windows Programme am Beispiel sbZip                                40
  Excel Don’ts – Was man mit Excel besser sein lässt                                42
    Eine Tabelle mit Beispielen die man besser vermeidet                            42
Zahlensysteme, Formate und Umwandlungen                                             43
  Abstract                                                                          43
  Umwandlungen und Berechnungen von Zahlen                                          43
    Zahlen in Worten ausgeben – sbInWorten                                          43
    Umwandlungen zwischen dem Dezimalsystem und dem Binärsystem                     47
    Feiertage ermitteln – IstFeiertag                                               52
    Zahl vollständig nicht-wissenschaftlich darstellen – sbNum2Str                  56
    Signifikante Ziffern einer Zahl – sbNSig                                        57
      sbNSig Program Code                                                           57
    Nummer eines Monatsnamens – sbMonatsZahl                                        58
    Die Berechnung der Kreiszahl π                                                  61
      Pi Ausgabe auf 1000 Stellen                                                   64
    Die Berechnung der Eulerschen Zahl e                                            65
      e Ausgabe auf 1000 Stellen                                                    66
    Literatur                                                                       67
    Zahlenfolge kürzer darstellen – sbParseNumSeq                                   67
  Rationale Zahlen = Brüche                                                         69
    Ermittle die nächstliegende rationale Zahl zu einer Gleitkommazahl – sbNRN      69
    Lineare Gleichungssysteme mit rationalen Koeffizienten                          72
    Anteilsveränderung als Bruch                                                    75
    Monatsanteil                                                                    76
  Linearkombination Ganzer Zahlen                                                   77
    Erweiterter Euklidischer Algorithmus – sbEuklid                                 77
  Uhrzeiten                                                                         79
    Arbeitszeit zwischen 2 Zeitpunkten – sbTimeDiff                                 79
    Arbeitszeit zu einem Zeitpunkt addieren – sbTimeAdd                             82
    Uhrzeit für eine andere Zeitzone umwandeln – ConvertTime                        85
  Prüfziffern                                                                       85
    Berechne oder prüfe eine Europäische Artikelnummer – sbEAN                      85
Einfache Mathematik in Formeln                                                      87
  Wie man Tabellenblattformeln analysiert                                           87
  Datumsformeln testen                                                              88
  Erster oder letzter Wochentag im Monat                                            90
  Derselbe Wochentag und Kalenderwoche im vorigen Jahr                              91
  Budgetkontrolle                                                                   92
  Geringste Signifikante Ziffer erhöhen                                             93
  Linearer Breakdown                                                                94
  Füge zwei Spalten mit Blocksatz zusammen                                          97
  Minimum Truck Load Problem                                                        98
  Nachstehende Nullen zählen                                                        99
  Minimax Interpolation                                                             99
  Interpolation mit PERZENTIL / PROZENTRANG                                        101
  Interpolation mit TREND                                                          103
  REFA Zeitklassen                                                                 104
  Rollen und Rechte                                                                105
  Rundungstricks                                                                   106
  Trinkgeld Verteilung                                                             107
  Unterjährige Werte glätten                                                       109
  Zellenbasiertes Diagramm                                                         110
Einfache VBA Programme                                                             112
  Abstract                                                                         112
  Addiere Zahlen desselben Zahlenformats – sbSumMyFormat                           112
  Zähle Zellen mit einer bestimmten Farbe – sbCountMyColor                         113
  Asset Allokation für ein Portfolio – sbAllocate                                  114
  Ausreißer Werte eliminieren – sbORB                                              115
  Faire Verteilung eines begrenzten Budgets – sbDistBudget                         117
  Collatz Länge Berechnen - sbCollatz                                              119
  Eindeutigen Rang auch bei Duplikaten vergeben – sbUniqRank                       120
  Eliminiere Punkte eines Graphen mit kleiner Steigungsänderung – sbReducePoints   122
  Geburtstagsliste – sbBirthdayList                                                124
  Akumuliertes Handelsblatt – sbAccumulatedTradeBlotter                            126
  Häufigste Paare – sbMostFrequentPairs                                            128
  Interpolieren – sbInterp                                                         130
  Erzeuge alle Kombinationen der Subsets k von n                                   132
  Lookup Varianten                                                                 134
  Minimale Anzahl von Scheinen und Münzen für einen Geldbetrag – sbMinCash         137
  Neugewichtung der Assets eines Portfolios – sbRebalancedReturn                   140
  Optimale Boxenstopps                                                             142
  Optimale Nutzung von Urlaubstageen                                               144
  Rundensystem für Turnier Jeder Gegen Jeden - sbRoundRobin                        146
    Weiterführende Literatur                                                       146
  Zugriffsrechte prüfen                                                            149
VBA Programme für Fortgeschrittene                                                 151
  Abstract                                                                         151
  Extremwerte von Zellen speichern – sbCellWatermarks                              151
  Aufgabenliste – sbTaskList                                                       153
  Datenanalyse – sbDatastats                                                       156
    System Handbuch                                                                156
      Übersicht                                                                    156
      Parameter im Tabellenblatt Param                                             157
    Anwenderhandbuch                                                               158
      Zusammenfassung                                                              158
      Konfigurationsdatei FileSpecs.csv                                            158
      NumStats Ausgabe                                                             159
      NumStatsMove Ausgabe                                                         159
      TextStats Ausgabe                                                            159
      TextStatsMove Ausgabe                                                        159
      Limits_Output Datei                                                          160
      Limits_Move_Output Datei                                                     161
    Programm Code sbDatastats                                                      162
      Modul Input_Data                                                             162
      Modul Output_Data                                                            164
      Modul Workflow                                                               165
  Gewichtberechnung                                                                190
    Sinnvolle Erweiterungen und Verallgemeinerungen                                192
  Minirechner                                                                      199
  Finanzmathematik – Optionen                                                      206
    Das Binomialbaummodell                                                         206
    Das Trinomial-Optionspreismodell und die Methode der Finiten Differenzen       212
    Monte Carlo Simulation                                                         217
  Erzeuge alle Permutationen eines Arrays – Quickperm                              227
  Sterblichkeitsrente                                                              229
    Komplexe Matrixformel (Schlechteste Wahl)                                      229
    Einfache Benutzerdefinierte Funktion mit VBA (Bessere Wahl)                    230
    Vorkalkulierte Tabelle und eine NBW Formel (Wahrscheinlich am Besten)          230
  Eine wartungsfreie Datenbenk                                                     231
    Einschränkungen                                                                231
    Verantwortlichkeiten                                                           231
    Systemdokumentation                                                            232
    Anwenderdokumentation                                                          232
      Super User mit Schreib-/Lesezugriff                                          232
      Normaler Anwender mit nur Lesezugriff                                        232
    Appendix – SQL Code                                                            233
    Appendix – VBA Code                                                            236
  Exkurs: Vergleiche Korrelationsmatrizen                                          239
    Abstract                                                                       239
    Implementierungsansatz                                                         239
    Parameter                                                                      239
Summenerhaltendes Runden mit RoundToSum                                            253
  Abstract                                                                         253
  Summenerhaltendes Runden                                                         253
    Beispiel für Prozentzahlen                                                     253
    Beispiel für absolute Zahlen                                                   254
  Die benutzerdefinierte VBA Funktion RoundToSum                                   254
  RoundToSum Programmcode                                                          255
  Round2Sum Lambda-Ausdruck                                                        256
  Werte runden ändert ihre Summe                                                   257
  Anwendungsbeispiele für RoundToSum                                               259
    Gemeinkostenumlage                                                             259
    Beispiel für ein exaktes Verhältnis von Zufallszahlen                          261
      Die benutzerdefinierte VBA Funktion sbExactRandHistogrm                      262
    Faire Mitarbeiterauswahl nach Teamgröße – sbFairStaffSelection                 264
    Stichprobe normalverteilen                                                     266
    Verteilung nach Restmenge                                                      271
      Ein simpler Ansatz                                                           271
      Eine korrekte Rechnung                                                       271
    Urlaub nehmen wenn weniger los ist                                             272
      Simples Beispiel                                                             272
      Komplexeres Beispiel                                                         273
    Zuweisen von Arbeitseinheiten vermindert um geleistete                         274
  RoundToSum im Vergleich                                                          275
    RoundToSum im Vergleich mit anderen “einfachen” Methoden                       275
    RoundToSum im Vergleich zum D‘Hondt Verfahren                                  278
  Literatur                                                                        278
Zufallszahlen erzeugen                                                             279
  Abstract                                                                         279
  Ganze Zufallszahlen                                                              279
    Natürliche Zufallszahlen – UniqRandInt                                         279
    Ganze Zufallszahlen – sbRandInt                                                281
    Zufallszahlen mit einer festgelegten Summe                                     283
      Minimum für die Zufallszahlen vorgegeben - sbLongRandSumN                    283
      Minimum und Maximum für die Zufallszahlen vorgegeben - sbRandIntFixSum       284
  Praktische Anwendungen ganzer Zufallszahlen                                      286
    Krabat – Wie alt können die Lehrlinge werden?                                  286
    Ein Mathematiktest mit ganzen Zufallszahlen – Generate_Math_Test               287
    Monte Carlo Simulation für eine faire Teamverteilung – sbGenerateTeams         289
    Monte Carlo Simulation für einen Regatta Flight Plan – sbRegattaFlightPlan     293
    Chancen beim Brettspiel Risiko                                                 296
    Eine simple Monte Carlo Simulation                                             300
  Gleitkomma-Zufallszahlen                                                         302
    Eine ideale Normalverteilung – sbGenNormDist                                   302
    Zufallszahlen mit der Summe 1 – sbRandSum1                                     304
    Zufallsportfolio mit Gesamtsumme und Asset-Schranken – sbAllocate              306
    Verteilungen von Gleitkomma-Zufallszahlen                                      307
      sbRandGeneral                                                                307
      sbRandHistogrm                                                               310
      sbRandTriang                                                                 313
      sbRandTrigen                                                                 314
      sbRandCauchy                                                                 318
      sbRandCDFInv                                                                 319
      sbRandPDF                                                                    320
      sbRandCumulative                                                             321
    Brownsche Brücken                                                              323
      sbGrowthSeries                                                               323
      Fixe Summe aus verschiedenen Zufallsbereichen                                325
  Korrelierte Zufallszahlen                                                        331
    Cholesky Zerlegung                                                             331
    Iman-Conover Methode                                                           333
  Praktische Anwendungen allgemeiner Zufallszahlen                                 340
    Testdaten erzeugen – sbGenerateTestData                                        340
    Zufallszahlen die sich nicht sofort wiederholen – sbRandomNoRepeatBeforeN      350
  Exkurs                                                                           352
    Wahrscheinlichkeiten berechnen – Ziehen von Karten mit und ohne Zurücklegen    352
Spaß ohne Praxisrelevanz für Fortgeschrittene                                      354
  Eine einfache VBA Pivot Tabelle – sbMiniPivot                                    354
  Rundenturnier-Paarungen mit Excel Tabellenblattfunktionen                        357
    Entwickeln einer Formellösung für ein Rundenturnier Jeder gegen Jeden          357
  TEXTVERKETTEN                                                                    361
Index                                                                              362

Bitte den Haftungsausschluss im Impressum beachten.

Plumhoff_Excel_VBA_Eine_Sammlung.pdf [12,7 MB PDF Datei, ohne jegliche Gewährleistung]