VBA

07/03/2009 - 23:47 von Ralf Brinkmann | Report spam
Okay, ich frag jetzt mal was ganz Einfaches:

Wie kann ich am besten VBA lernen? Ohne teuren MS-Kurs?

Buch? Webseite? Film? Hat jemand einen Tipp für mich?

Gruß, Ralf
Windows XP Home SP3
Opera 10.00-1285
 

Lesen sie die antworten

#1 Arnulf Sopp
08/03/2009 - 00:47 | Warnen spam
Am Sat, 7 Mar 2009 23:47:46 +0100 schrieb Ralf Brinkmann:

Wie kann ich am besten VBA lernen? Ohne teuren MS-Kurs?



Da Du diese Frage hier stellst, meinst Du gewiss VBA für Excel.
Bekanntlich kann man damit ja auch andere MS-Produkte betun, aber
davon verstehe ich noch weniger als von Excel-VBA.

Zwar habe ich selbst erst vor ein paar Wochen damit angefangen, aber
gerade diese frische Erfahrung, sozusagen von Greenhorn zu Greenhorn,
kann Dir vielleicht weiterhelfen.

In dieser NG wurden mir zwei Bücher empfohlen:

Bernd Held, "Excel-VBA - Die praktische Referenz", Markt + Technik
Michael Kofler, "Excel-VBA programmieren", Addison-Wesley

Beide sind hilfreich, aber nicht minder ist es die kontextbezogene
Hilfefunktion im VBA-Editor von Excel (auch ein Tip aus der NG).

Was mich jedoch am weitesten brachte, war bzw. ist das Belauern von
Prozeduren, die andere geschrieben haben. VBA ist im Grunde
gewöhnliches, wenn auch nicht besonders literaturtaugliches Englisch.
Man versteht meist spontan, was da passiert. Beispiel:

Sub ZeilenAusEin()
' Blendet einen bestimmten Bereich aus und ein
If ActiveSheet.Rows("35:97").Hidden = False Then GoTo Ausblenden
ActiveSheet.Rows("35:97").Hidden = False
Exit Sub
Ausblenden:
ActiveSheet.Rows("35:97").Hidden = True
End Sub

Ein paar Dinge werden sofort klar, und sei es auch nur, dass das
Hochkomma einen Kommentar einleitet, der bei der Ausführung der
Prozedur keinen Effekt hat; symbolische Sprungziele werden mit einem
Doppelpunkt beendet, nicht aber bei der Anweisung zum Sprung.

Mit nur wenig Mühe wirst Du die Prozedur sogar auf Anhieb komplett
verstehen. Das kannst Du auch!

Hausaufgabe: Blende ein paar Spalten ein und aus. Tip: Die heißen auf
englisch nicht Rows (Zeilen), sondern Columns.

Um solche Tests zu machen, kannst Du Dir eine Spiel-Arbeitsmappe
einrichten, auf der Du nichts Wichtiges zerschießen kannst. Lege Dir
in ein Blatt einen Button (Einfügen -> Formen -> Makro zuweisen), mit
dem Du Dir Dein neues Werk jeweils betrachten kannst.

Und übrigens durfte ich die Erfahrung machen, dass es in dieser NG von
hilfsbereiten Mitlesern nur so wimmelt. Auch das bringt Dich weiter.

Viel Erfolg!

Arnulf

Ähnliche fragen