“Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.” [Martin Golding]

Abstract

Ich bin es wirkich müde, anderer Leute Programme aufzuräumen. Aber manchmal ist dies Teil meiner Arbeit. Bitte tun Sie mir und anderen einen Gefallen und wenden Sie gesunden Menschenverstand wie unten beschrieben an.

Eine Tabelle mit Positiv-Beispielen

Selbstverständlich soll diese Liste Sie in gute Laune versetzen. Nehmen Sie sie bitte als Herausforderung an.


# Wenden Sie dies an Warum?
1 Seien Sie ein guter Programmierer Das Wichtigste an einem guten VBA Programm ist, dass es ein gutes Programm ist, und nicht voller VBA Tricks. Wenn Sie keine assoziativen Arrays und keine Klassen kennen, dann müssen sie auf dem Boden herumkriechen und bekommen Ihre Anwendung nie zum Fliegen
2 Gutes Excel und VBA Wissen Sie sollten Excel und VBA gut beherrschen
3 Dokumentieren Sie Ihr Programm ausreichend Erklären Sie was ein kundiger Dritter wissen muss. Schreiben Sie keine Romane über Trivialitäten. Gute Dokumentation kommt mit dem Programm - nicht danach. Nur Dummköpfe und Menschen, die sich unentbehrlich machen wollen, dokumentieren nicht
4 Verwenden Sie OPTION EXPLICIT Sie müssen alle verwendeten Variablen deklarieren. Falls dies jemand ablehnt, entlassen Sie ihn/sie. Gut zu wissen: SHIFT + F2 im VBA Editor bringt Sie zur Deklaration einer Variablen oder Konstanten, STRG + SHIFT + F2 wieder zurück
5 Testen Sie Ihr Programm gut Anwendungen ab einer gewissen Größe benötigen Testprogramme oder sogar eine Serie von Regressionstests
6 Optimieren Sie Ihr Programm. Ein einfacher Anfang besteht im Ausschalten der Bildschirmaktualisierung und dem Setzen der Berechnung auf manuell Für einen einfachen Start empfehle ich die Klasse SystemState. Fortgeschrittene sollten Profiling verwenden
7 Namenskonvention Mit einer (externer Link!) Namenskonvention kann jeder einfach den Typ eines Programmobjekts erkennen
8 Kodierkonvention Eine gute (externer Link!) Kodierkonvention macht ein Programm lesbarer, einfacher zu warten, und verlässlicher und effizienter
9 Tabellenspalten enumerieren (benamsen) Vereinfacht Programmänderungen - oder wollen Sie alle hart kodierten Verweise auf Spalten rechts von einer neu eingefügten oder gelöschten Spalte anpassen?
10 Säubern Sie Makroaufzeichnungen Selbstverständlich nehme ich ein Makro auf, wenn ich einen VBA Befehl vergessen habe. Aber wenn Sie aufgezeichneten ungesäuberten Spaghetti Code verwenden, muss dies Ihr Nachfolger aufräumen
11 Protokollieren Sie Ihre Programmausführung Mit einer Logger Klasse können Sie einem Revisor zeigen, wer Ihr Programm mit welchen Parametern ausführte und ob Ihr Programm problemlos durchlief

Anwendungsbeispiel

fair zufällig verteilen