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
Die Excel / VBA Programmierumgebung 8
Abstract 8
Grundlegendes 8
Während des Editierens 8
Während der Programmausführung 9
Breakpoints 9
Fehlerbehandlung 10
Gute Programmierpraxis 11
Seien Sie ein guter Programmierer 11
Gutes Excel und VBA Wissen 11
Programmierkonventionen 12
Säubern Sie Makroaufzeichnungen 12
Dokumentieren Sie Ihr Programm ausreichend 12
Testen Sie Ihr Programm gut 12
Protokollieren Sie Ihre Programmausführung 12
Optimieren Sie Ihr Programm 12
Systemstatus sichern und zurückschreiben – SystemState Klasse 13
Systemstatus Variablen 14
Programmablauf dokumentieren – Logging Klasse 17
Für und Wider 17
Parameter 18
Beispielausgabe 19
Module 19
Klassenmodule 23
Exkurs: Logger für PowerShell – Write-Log 24
Excel Version anzeigen – ApplicationVersion 25
Anzahl der Dimensionen eines Arrays – ArrayDim 26
Zellinformationen ausgeben – sbGetCell 27
Nächste Gleitkommazahl – sbNextFloat 31
Aufruf anderer Windows Programme am Beispiel sbZip 31
Zahlensysteme, Formate und Umwandlungen 33
Abstract 33
Umwandlungen und Berechnungen von Zahlen 33
Zahlen in Worten ausgeben – sbInWorten 33
Umwandlungen zwischen dem Dezimalsystem und dem Binärsystem 37
Feiertage ermitteln – IstFeiertag 42
Zahl vollständig nicht-wissenschaftlich darstellen – sbNum2Str 46
Nummer eines Monatsnamens – sbMonatsZahl 47
Die Berechnung der Kreiszahl π 50
Die Berechnung der Eulerschen Zahl e 54
Zahlenfolge kürzer darstellen – sbParseNumSeq 56
Rationale Zahlen = Brüche 58
Ermittle die nächstliegende rationale Zahl zu einer Gleitkommazahl – sbNRN 58
Lineare Gleichungssysteme mit rationalen Koeffizienten 61
Anteilsveränderung als Bruch 64
Monatsanteil 65
Linearkombination Ganzer Zahlen 66
Erweiterter Euklidischer Algorithmus – sbEuklid 66
Uhrzeiten 68
Arbeitszeit zwischen 2 Zeitpunkten – sbTimeDiff 68
Arbeitszeit zu einem Zeitpunkt addieren – sbTimeAdd 71
Uhrzeit für eine andere Zeitzone umwandeln – ConvertTime 74
Prüfziffern 74
Berechne oder prüfe eine Europäische Artikelnummer – sbEAN 74
Einfache Mathematik in Formeln 76
Abstract 76
Datumsformeln Testen 76
Budgetkontrolle 78
Geringste Signifikante Ziffer Erhöhen 78
Linearer Breakdown 80
Minimum Truck Load Problem 83
Nachstehende Nullen Zählen 83
REFA Zeitklassen 85
Rollen und Rechte 86
Rundungstricks 87
Trinkgeld Verteilung 88
Unterjährige Werte Glätten 90
Zellenbasiertes Diagramm 91
Einfache VBA Programme 93
Abstract 93
Ausreißer Werte eliminieren – sbORB 93
Budgetplanung – sbDistBudget 95
Collatz Länge Berechnen - sbCollatz 97
Eindeutigen Rang auch bei Duplikaten vergeben – sbUniqRank 99
Eliminiere Punkte eines Graphen mit kleiner Steigungsänderung – sbReducePoints 101
Geburtstagsliste – sbBirthdayList 103
Interpolieren – sbInterp 105
Erzeuge alle Kombinationen der Subsets k von n 107
Minimale Anzahl von Scheinen und Münzen für einen Geldbetrag – sbMinCash 108
Neugewichtung der Assets eines Portfolios – sbRebalancedReturn 111
Optimale Boxenstopps 113
Rundensystem für Turnier Jeder Gegen Jeden - sbRoundRobin 115
Weiterführende Literatur 115
Zugriffsrechte Prüfen 118
TEXTVERKETTEN 121
Urlaubstage Optimal Nutzen 122
VBA Programme für Fortgeschrittene 123
Abstract 123
Aufgabenliste – sbTaskList 123
Data Analysis – sbDatastats 126
System Handbuch 126
Übersicht 126
Parameter im Tabellenblatt Param 127
Anwenderhandbuch 128
Zusammenfassung 128
Konfigurationsdatei FileSpecs.csv 128
NumStats Ausgabe 129
NumStatsMove Ausgabe 129
TextStats Ausgabe 129
TextStatsMove Ausgabe 129
Limits_Output Datei 130
Limits_Move_Output Datei 131
Programm Code sbDatastats 132
Module Input_Data 132
Module Output_Data 134
Module Workflow 135
Minirechner 160
Der Kommandozeilen Interpreter - Worksheet_Change Programmcode 161
Der Programm Interpreter - Interpreter Programmcode 162
Erzeuge alle Permutationen eines Arrays – Quickperm 166
Sterblichkeitsrente 168
Komplexe Matrixformel (Schlechteste Wahl) 168
Einfache Benutzerdefinierte Funktion mit VBA (Bessere Wahl) 168
Vorkalkulierte Tabelle und eine NBW Formel (Wahrscheinlich am Besten) 169
Summenerhaltendes Runden mit RoundToSum 171
Abstract 171
Summenerhaltendes Runden 171
Beispiel für Prozentzahlen 171
Beispiel für absolute Zahlen 172
Die benutzerdefinierte VBA Funktion RoundToSum 172
RoundToSum Programmcode 173
Round2Sum Lambda-Ausdruck 174
Werte runden ändert ihre Summe 175
Anwendungsbeispiele für RoundToSum 177
Gemeinkostenumlage 177
Beispiel für ein exaktes Verhältnis von Zufallszahlen 179
Die benutzerdefinierte VBA Funktion sbExactRandHistogrm 180
Faire Mitarbeiterauswahl nach Teamgröße – sbFairStaffSelection 182
Stichprobe normalverteilen 184
Verteilung nach Restmenge 189
Ein simpler Ansatz 189
Eine korrekte Rechnung 189
Urlaub nehmen wenn weniger los ist 190
Simples Beispiel 190
Komplexeres Beispiel 191
Zuweisen von Arbeitseinheiten vermindert um geleistete 192
RoundToSum im Vergleich 193
RoundToSum im Vergleich mit anderen “einfachen” Methoden 193
RoundToSum im Vergleich zum D‘Hondt Verfahren 196
Literatur 196
Zufallszahlen erzeugen 197
Abstract 197
Ganze Zufallszahlen 197
Natürliche Zufallszahlen – UniqRandInt 197
Ganze Zufallszahlen – sbRandInt 199
Zufallszahlen mit einer festgelegten Summe 201
Minimum für die Zufallszahlen vorgegeben - sbLongRandSumN 201
Minimum und Maximum für die Zufallszahlen vorgegeben - sbRandIntFixSum 202
Praktische Anwendungen ganzer Zufallszahlen 204
Monte Carlo Simulation für eine faire Teamverteilung – sbGenerateTeams 204
Monte Carlo Simulation für einen Regatta Flight Plan – sbRegattaFlightPlan 208
Chancen beim Brettspiel Risiko 212
Krabat – Wie alt können die Lehrlinge werden? 216
Eine simple Monte Carlo Simulation 217
Gleitkomma-Zufallszahlen 219
Eine ideale Normalverteilung – sbGenNormDist 219
Zufallszahlen mit der Summe 1 – sbRandSum1 221
Zufallsportfolio mit Gesamtsumme und Asset-Schranken – sbAllocate 223
Verteilungen von Gleitkomma-Zufallszahlen 224
sbRandGeneral 224
sbRandHistogrm 227
sbRandTriang 230
sbRandTrigen 231
sbRandCauchy 235
sbRandCDFInv 236
sbRandPDF 237
sbRandCumulative 238
Brownsche Brücken 240
sbGrowthSeries 240
Fixe Summe aus verschiedenen Zufallsbereichen 242
Korrelierte Zufallszahlen 248
Cholesky Zerlegung 248
Iman-Conover Methode 250
Praktische Anwendungen allgemeiner Zufallszahlen 257
Testdaten erzeugen – sbGenerateTestData 257
Exkurs 267
Wahrscheinlichkeiten berechnen – Ziehen von Karten mit und ohne Zurücklegen 267
Spaß ohne Praxisrelevanz für Fortgeschrittene 269
Kleine VBA Pivot-Lösung – sbMiniPivot 269
Rundenturnier-Paarungen mit Excel Tabellenblattfunktionen 273
Entwickeln einer Formellösung für ein Rundenturnier Jeder gegen Jeden 273
Index 277
Bitte den Haftungsausschluss im Impressum beachten.
Plumhoff_Excel_VBA_Eine_Sammlung.pdf [5.014 KB PDF Datei, ohne jegliche Gewährleistung]