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 10
Abstract 10
Grundlegendes 10
Während des Editierens 10
Während der Programmausführung 11
Breakpoints 11
Fehlerbehandlung 12
Gute Programmierpraxis 13
Seien Sie ein guter Programmierer 13
Gutes Excel und VBA Wissen 13
Programmierkonventionen 14
Säubern Sie Makroaufzeichnungen 14
Dokumentieren Sie Ihr Programm ausreichend 14
Testen Sie Ihr Programm gut 14
Protokollieren Sie Ihre Programmausführung 14
Optimieren Sie Ihr Programm 14
Systemstatus sichern und zurückschreiben – SystemState Klasse 15
Systemstatus Variablen 15
Programmablauf dokumentieren – Logging Klasse 18
Für und Wider 18
Parameter 19
Beispielausgabe 20
Module 20
Klassenmodule 24
Exkurs: Logger für PowerShell – Write-Log 25
Bereichsnamen anzeigen – sbNamedRanges 27
Excel Version anzeigen – ApplicationVersion 28
Anzahl der Dimensionen eines Arrays – ArrayDim 29
Zellinformationen ausgeben – sbGetCell 30
Nächste Gleitkommazahl – sbNextFloat 34
Aufruf anderer Windows Programme am Beispiel sbZip 34
Excel Don’ts – Was man mit Excel besser sein lässt 36
Eine Tabelle mit Beispielen die man besser vermeidet 36
Zahlensysteme, Formate und Umwandlungen 37
Abstract 37
Umwandlungen und Berechnungen von Zahlen 37
Zahlen in Worten ausgeben – sbInWorten 37
Umwandlungen zwischen dem Dezimalsystem und dem Binärsystem 41
Feiertage ermitteln – IstFeiertag 46
Zahl vollständig nicht-wissenschaftlich darstellen – sbNum2Str 50
Nummer eines Monatsnamens – sbMonatsZahl 51
Die Berechnung der Kreiszahl π 54
Die Berechnung der Eulerschen Zahl e 58
Zahlenfolge kürzer darstellen – sbParseNumSeq 60
Rationale Zahlen = Brüche 62
Ermittle die nächstliegende rationale Zahl zu einer Gleitkommazahl – sbNRN 62
Lineare Gleichungssysteme mit rationalen Koeffizienten 65
Anteilsveränderung als Bruch 68
Monatsanteil 69
Linearkombination Ganzer Zahlen 70
Erweiterter Euklidischer Algorithmus – sbEuklid 70
Uhrzeiten 72
Arbeitszeit zwischen 2 Zeitpunkten – sbTimeDiff 72
Arbeitszeit zu einem Zeitpunkt addieren – sbTimeAdd 75
Uhrzeit für eine andere Zeitzone umwandeln – ConvertTime 78
Prüfziffern 78
Berechne oder prüfe eine Europäische Artikelnummer – sbEAN 78
Einfache Mathematik in Formeln 80
Wie man Tabellenblattformeln analysiert 80
Datumsformeln testen 82
Budgetkontrolle 84
Geringste Signifikante Ziffer Erhöhen 85
Linearer Breakdown 86
Minimum Truck Load Problem 89
Nachstehende Nullen Zählen 90
REFA Zeitklassen 90
Rollen und Rechte 92
Rundungstricks 93
Trinkgeld Verteilung 94
Unterjährige Werte Glätten 96
Zellenbasiertes Diagramm 97
Einfache VBA Programme 99
Abstract 99
Ausreißer Werte eliminieren – sbORB 99
Budgetplanung – sbDistBudget 101
Collatz Länge Berechnen - sbCollatz 103
Eindeutigen Rang auch bei Duplikaten vergeben – sbUniqRank 104
Eliminiere Punkte eines Graphen mit kleiner Steigungsänderung – sbReducePoints 106
Geburtstagsliste – sbBirthdayList 108
Akumuliertes Handelsblatt – sbAccumulatedTradeBlotter 110
sbAccumulatedTradeBlotter Programmcode 110
Interpolieren – sbInterp 112
Erzeuge alle Kombinationen der Subsets k von n 114
Combinations_with_k_subsets_of_n Programmcode 115
Lookup Varianten 116
Lookup Programmcodes 116
Minimale Anzahl von Scheinen und Münzen für einen Geldbetrag – sbMinCash 119
Neugewichtung der Assets eines Portfolios – sbRebalancedReturn 122
Optimale Boxenstopps 124
Rundensystem für Turnier Jeder Gegen Jeden - sbRoundRobin 126
Weiterführende Literatur 126
Zugriffsrechte Prüfen 129
Urlaubstage Optimal Nutzen 132
VBA Programme für Fortgeschrittene 133
Abstract 133
Aufgabenliste – sbTaskList 133
Data Analysis – sbDatastats 136
System Handbuch 136
Übersicht 136
Parameter im Tabellenblatt Param 137
Anwenderhandbuch 138
Zusammenfassung 138
Konfigurationsdatei FileSpecs.csv 138
NumStats Ausgabe 139
NumStatsMove Ausgabe 139
TextStats Ausgabe 139
TextStatsMove Ausgabe 139
Limits_Output Datei 140
Limits_Move_Output Datei 141
Programm Code sbDatastats 142
Module Input_Data 142
Module Output_Data 144
Module Workflow 145
Gewichtberechnung 170
Sinnvolle Erweiterungen und Verallgemeinerungen 174
AllFirstDraws Programmcode 174
AllFirstDraws Monte Carlo Programmcode 177
CombinationsWithMinRemainingWeight Programmcode 179
Minirechner 181
Der Kommandozeilen Interpreter - Worksheet_Change Programmcode 182
Der Programm Interpreter - Interpreter Programmcode 183
Finanzmathematik – Optionen 187
Das Binomialbaummodell 187
Chapter 2 Programmcode 188
Das Trinomial-Optionspreismodell und die Methode der Finiten Differenzen 193
Chapter 3 Programmcode 193
Monte Carlo Simulation 198
Monte Carlo Simulation Programmcode 198
Erzeuge alle Permutationen eines Arrays – Quickperm 208
Sterblichkeitsrente 210
Komplexe Matrixformel (Schlechteste Wahl) 210
Einfache Benutzerdefinierte Funktion mit VBA (Bessere Wahl) 210
Vorkalkulierte Tabelle und eine NBW Formel (Wahrscheinlich am Besten) 211
Summenerhaltendes Runden mit RoundToSum 213
Abstract 213
Summenerhaltendes Runden 213
Beispiel für Prozentzahlen 213
Beispiel für absolute Zahlen 214
Die benutzerdefinierte VBA Funktion RoundToSum 214
RoundToSum Programmcode 215
Round2Sum Lambda-Ausdruck 216
Werte runden ändert ihre Summe 217
Anwendungsbeispiele für RoundToSum 219
Gemeinkostenumlage 219
Beispiel für ein exaktes Verhältnis von Zufallszahlen 221
Die benutzerdefinierte VBA Funktion sbExactRandHistogrm 222
Faire Mitarbeiterauswahl nach Teamgröße – sbFairStaffSelection 224
Stichprobe normalverteilen 226
Verteilung nach Restmenge 231
Ein simpler Ansatz 231
Eine korrekte Rechnung 231
Urlaub nehmen wenn weniger los ist 232
Simples Beispiel 232
Komplexeres Beispiel 233
Zuweisen von Arbeitseinheiten vermindert um geleistete 234
RoundToSum im Vergleich 235
RoundToSum im Vergleich mit anderen “einfachen” Methoden 235
RoundToSum im Vergleich zum D‘Hondt Verfahren 238
Literatur 238
Zufallszahlen erzeugen 239
Abstract 239
Ganze Zufallszahlen 239
Natürliche Zufallszahlen – UniqRandInt 239
Ganze Zufallszahlen – sbRandInt 241
Zufallszahlen mit einer festgelegten Summe 243
Minimum für die Zufallszahlen vorgegeben - sbLongRandSumN 243
Minimum und Maximum für die Zufallszahlen vorgegeben - sbRandIntFixSum 244
Praktische Anwendungen ganzer Zufallszahlen 246
Monte Carlo Simulation für eine faire Teamverteilung – sbGenerateTeams 246
Monte Carlo Simulation für einen Regatta Flight Plan – sbRegattaFlightPlan 250
Chancen beim Brettspiel Risiko 254
Krabat – Wie alt können die Lehrlinge werden? 258
Eine simple Monte Carlo Simulation 259
Gleitkomma-Zufallszahlen 261
Eine ideale Normalverteilung – sbGenNormDist 261
Zufallszahlen mit der Summe 1 – sbRandSum1 263
Zufallsportfolio mit Gesamtsumme und Asset-Schranken – sbAllocate 265
Verteilungen von Gleitkomma-Zufallszahlen 266
sbRandGeneral 266
sbRandHistogrm 269
sbRandTriang 272
sbRandTrigen 273
sbRandCauchy 277
sbRandCDFInv 278
sbRandPDF 279
sbRandCumulative 280
Brownsche Brücken 282
sbGrowthSeries 282
Fixe Summe aus verschiedenen Zufallsbereichen 284
Korrelierte Zufallszahlen 290
Cholesky Zerlegung 290
Iman-Conover Methode 292
Praktische Anwendungen allgemeiner Zufallszahlen 299
Testdaten erzeugen – sbGenerateTestData 299
Exkurs 309
Wahrscheinlichkeiten berechnen – Ziehen von Karten mit und ohne Zurücklegen 309
Spaß ohne Praxisrelevanz für Fortgeschrittene 311
Kleine VBA Pivot-Lösung – sbMiniPivot 311
Rundenturnier-Paarungen mit Excel Tabellenblattfunktionen 315
Entwickeln einer Formellösung für ein Rundenturnier Jeder gegen Jeden 315
TEXTVERKETTEN 319
Index 320
Bitte den Haftungsausschluss im Impressum beachten.
Plumhoff_Excel_VBA_Eine_Sammlung.pdf [5,5 MB PDF Datei, ohne jegliche Gewährleistung]
Plumhoff_Excel_VBA_Eine_Sammlung_Druckversion.pdf [11,1 MB PDF Datei, ohne jegliche Gewährleistung]