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                                             16
      Gutes Excel und VBA Wissen                                                    16
      Programmierkonventionen                                                       16
      Säubern Sie Makroaufzeichnungen                                               16
      Dokumentieren Sie Ihr Programm ausreichend                                    16
      Testen Sie Ihr Programm gut                                                   16
      Protokollieren Sie Ihre Programmausführung                                    16
      Optimieren Sie Ihr Programm                                                   17
  Systemstatus sichern und zurückschreiben – SystemState Klasse                     18
    Systemstatus Variablen                                                          18
  Programmablauf dokumentieren – Logging Klasse                                     21
    Für und Wider                                                                   21
    Parameter                                                                       22
    Beispielausgabe                                                                 23
    Module                                                                          23
    Klassenmodule                                                                   27
    Exkurs: Logger für PowerShell – Write-Log                                       28
  Exportiere einen Bereich als Grafik – sbExportRange2Picture                       30
    sbExportRange2Picture Programmcode                                              30
  Bereichsnamen anzeigen – sbNamedRanges                                            33
  Excel Version anzeigen – ApplicationVersion                                       34
  Anzahl der Dimensionen eines Arrays – ArrayDim                                    35
  Zellinformationen ausgeben – sbGetCell                                            36
  Nächste Gleitkommazahl – sbNextFloat                                              40
  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
  Derselbe Wochentag und Kalenderwoche im vorigen Jahr                              90
  Budgetkontrolle                                                                   91
  Geringste Signifikante Ziffer erhöhen                                             92
  Linearer Breakdown                                                                93
  Füge zwei Spalten mit Blocksatz zusammen                                          96
  Minimum Truck Load Problem                                                        97
  Nachstehende Nullen zählen                                                        98
  Minimax Interpolation                                                             98
  Interpolation mit PERZENTIL / PROZENTRANG                                        100
  Interpolation mit TREND                                                          102
  REFA Zeitklassen                                                                 103
  Rollen und Rechte                                                                104
  Rundungstricks                                                                   105
  Trinkgeld Verteilung                                                             106
  Unterjährige Werte glätten                                                       108
  Zellenbasiertes Diagramm                                                         109
Einfache VBA Programme                                                             111
  Abstract                                                                         111
  Addiere Zahlen desselben Zahlenformats – sbSumMyFormat                           111
  Zähle Zellen mit einer bestimmten Farbe – sbCountMyColor                         112
  Asset Allokation für ein Portfolio – sbAllocate                                  113
  Ausreißer Werte eliminieren – sbORB                                              114
  Faire Verteilung eines begrenzten Budgets – sbDistBudget                         116
  Collatz Länge Berechnen - sbCollatz                                              118
  Eindeutigen Rang auch bei Duplikaten vergeben – sbUniqRank                       119
  Eliminiere Punkte eines Graphen mit kleiner Steigungsänderung – sbReducePoints   121
  Geburtstagsliste – sbBirthdayList                                                123
  Akumuliertes Handelsblatt – sbAccumulatedTradeBlotter                            125
  Häufigste Paare – sbMostFrequentPairs                                            127
  Interpolieren – sbInterp                                                         129
  Erzeuge alle Kombinationen der Subsets k von n                                   131
  Lookup Varianten                                                                 133
  Minimale Anzahl von Scheinen und Münzen für einen Geldbetrag – sbMinCash         136
  Neugewichtung der Assets eines Portfolios – sbRebalancedReturn                   139
  Optimale Boxenstopps                                                             141
  Optimale Nutzung von Urlaubstageen                                               143
  Rundensystem für Turnier Jeder Gegen Jeden - sbRoundRobin                        145
    Weiterführende Literatur                                                       145
  Zugriffsrechte prüfen                                                            148
VBA Programme für Fortgeschrittene                                                 150
  Abstract                                                                         150
  Extremwerte von Zellen speichern – sbCellWatermarks                              150
  Aufgabenliste – sbTaskList                                                       152
  Datenanalyse – sbDatastats                                                       155
    System Handbuch                                                                155
      Übersicht                                                                    155
      Parameter im Tabellenblatt Param                                             156
    Anwenderhandbuch                                                               157
      Zusammenfassung                                                              157
      Konfigurationsdatei FileSpecs.csv                                            157
      NumStats Ausgabe                                                             158
      NumStatsMove Ausgabe                                                         158
      TextStats Ausgabe                                                            158
      TextStatsMove Ausgabe                                                        158
      Limits_Output Datei                                                          159
      Limits_Move_Output Datei                                                     160
    Programm Code sbDatastats                                                      161
      Modul Input_Data                                                             161
      Modul Output_Data                                                            163
      Modul Workflow                                                               164
  Gewichtberechnung                                                                189
    Sinnvolle Erweiterungen und Verallgemeinerungen                                191
  Minirechner                                                                      198
  Finanzmathematik – Optionen                                                      205
    Das Binomialbaummodell                                                         205
    Das Trinomial-Optionspreismodell und die Methode der Finiten Differenzen       211
    Monte Carlo Simulation                                                         216
  Erzeuge alle Permutationen eines Arrays – Quickperm                              226
  Sterblichkeitsrente                                                              228
    Komplexe Matrixformel (Schlechteste Wahl)                                      228
    Einfache Benutzerdefinierte Funktion mit VBA (Bessere Wahl)                    229
    Vorkalkulierte Tabelle und eine NBW Formel (Wahrscheinlich am Besten)          229
  Eine wartungsfreie Datenbenk                                                     230
    Einschränkungen                                                                230
    Verantwortlichkeiten                                                           230
    Systemdokumentation                                                            231
    Anwenderdokumentation                                                          231
      Super User mit Schreib-/Lesezugriff                                          231
      Normaler Anwender mit nur Lesezugriff                                        231
    Appendix – SQL Code                                                            232
    Appendix – VBA Code                                                            235
  Exkurs: Vergleiche Korrelationsmatrizen                                          238
    Abstract                                                                       238
    Implementierungsansatz                                                         238
    Parameter                                                                      238
    Beispiel für einen Programmaufruf                                              239
Summenerhaltendes Runden mit RoundToSum                                            252
  Abstract                                                                         252
  Summenerhaltendes Runden                                                         252
    Beispiel für Prozentzahlen                                                     252
    Beispiel für absolute Zahlen                                                   253
  Die benutzerdefinierte VBA Funktion RoundToSum                                   253
  RoundToSum Programmcode                                                          254
  Round2Sum Lambda-Ausdruck                                                        255
  Werte runden ändert ihre Summe                                                   256
  Anwendungsbeispiele für RoundToSum                                               258
    Gemeinkostenumlage                                                             258
    Beispiel für ein exaktes Verhältnis von Zufallszahlen                          260
      Die benutzerdefinierte VBA Funktion sbExactRandHistogrm                      261
    Faire Mitarbeiterauswahl nach Teamgröße – sbFairStaffSelection                 263
    Stichprobe normalverteilen                                                     265
    Verteilung nach Restmenge                                                      270
      Ein simpler Ansatz                                                           270
      Eine korrekte Rechnung                                                       270
    Urlaub nehmen wenn weniger los ist                                             271
      Simples Beispiel                                                             271
      Komplexeres Beispiel                                                         272
    Zuweisen von Arbeitseinheiten vermindert um geleistete                         273
  RoundToSum im Vergleich                                                          274
    RoundToSum im Vergleich mit anderen “einfachen” Methoden                       274
    RoundToSum im Vergleich zum D‘Hondt Verfahren                                  277
  Literatur                                                                        277
Zufallszahlen erzeugen                                                             278
  Abstract                                                                         278
  Ganze Zufallszahlen                                                              278
    Natürliche Zufallszahlen – UniqRandInt                                         278
    Ganze Zufallszahlen – sbRandInt                                                280
    Zufallszahlen mit einer festgelegten Summe                                     282
      Minimum für die Zufallszahlen vorgegeben - sbLongRandSumN                    282
      Minimum und Maximum für die Zufallszahlen vorgegeben - sbRandIntFixSum       283
  Praktische Anwendungen ganzer Zufallszahlen                                      285
    Krabat – Wie alt können die Lehrlinge werden?                                  285
    Ein Mathematiktest mit ganzen Zufallszahlen – Generate_Math_Test               286
    Monte Carlo Simulation für eine faire Teamverteilung – sbGenerateTeams         288
    Monte Carlo Simulation für einen Regatta Flight Plan – sbRegattaFlightPlan     292
    Chancen beim Brettspiel Risiko                                                 295
    Eine simple Monte Carlo Simulation                                             299
  Gleitkomma-Zufallszahlen                                                         301
    Eine ideale Normalverteilung – sbGenNormDist                                   301
    Zufallszahlen mit der Summe 1 – sbRandSum1                                     303
    Zufallsportfolio mit Gesamtsumme und Asset-Schranken – sbAllocate              305
    Verteilungen von Gleitkomma-Zufallszahlen                                      306
      sbRandGeneral                                                                306
      sbRandHistogrm                                                               309
      sbRandTriang                                                                 312
      sbRandTrigen                                                                 313
      sbRandCauchy                                                                 317
      sbRandCDFInv                                                                 318
      sbRandPDF                                                                    319
      sbRandCumulative                                                             320
    Brownsche Brücken                                                              322
      sbGrowthSeries                                                               322
      Fixe Summe aus verschiedenen Zufallsbereichen                                324
  Korrelierte Zufallszahlen                                                        330
    Cholesky Zerlegung                                                             330
    Iman-Conover Methode                                                           332
  Praktische Anwendungen allgemeiner Zufallszahlen                                 339
    Testdaten erzeugen – sbGenerateTestData                                        339
    Zufallszahlen die sich nicht sofort wiederholen – sbRandomNoRepeatBeforeN      349
  Exkurs                                                                           351
    Wahrscheinlichkeiten berechnen – Ziehen von Karten mit und ohne Zurücklegen    351
Spaß ohne Praxisrelevanz für Fortgeschrittene                                      353
  Eine einfache VBA Pivot Tabelle – sbMiniPivot                                    353
  Rundenturnier-Paarungen mit Excel Tabellenblattfunktionen                        356
    Entwickeln einer Formellösung für ein Rundenturnier Jeder gegen Jeden          356
  TEXTVERKETTEN                                                                    360
Index                                                                              361

Bitte den Haftungsausschluss im Impressum beachten.

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