[VBA] Lernen / Excel Makros

Sherman123

Fleet Admiral
Registriert
Nov. 2002
Beiträge
12.337
Ich suche Lern-/Übungsunterlagen für VBA. Ich möchte mir einfache Excel Makros schreiben können. (z.B.: Befehl: Übernimm jeden 3. Werte ein jeder .txt in einem bestimmten Ordner (mit sehr vielen .txts) und füge diesen in Spalte 1 ein.)

Mit Matlab kenn ich mich einigermaßen aus. Weiters sind Kenntnisse in java vorhanden. (auch einfachere Objekt-Übergabe-Dingsln)

Es müsste somit nicht bei 0 weggehen.


Ich suche ein Buch, eine Homepage oder einen Lernkurz zum selbst abarbeiten - einfach einen Anfang in VBA.
 
http://msdn.microsoft.com/en-us/isv/aa905357.aspx
Da bekommst du jeweils die "Language References".

http://msdn.microsoft.com/de-de/isv/bb190538(en-us).aspx
Und von hier aus kommst du zu den Newsgroups, in denen VBA diskutiert wird.

http://de.wikibooks.org/wiki/VBA_in_Excel_-_Grundlagen
Das Wiki-Book wäre auch ein Ansatzpunkt, aber nicht sooo ausführlich.

http://www.amazon.de/Programmierung-Studienausgabe-Programmierung-Excel-Access/dp/3772375898/
Ansonsten, kauf dir ein Buch. Mit 20€ bist du dabei.
 
Danke. Ich denke für den Anfang ist das Amazon Buch am geeignetsten!
Die Rezensionen zu diesem Buch sind auch sehr gut.

Später werde ich dann auf die Links zurückkommen.

Vielen Dank!!:daumen:
 
Schaue dir doch ein Buch über vb.net an, die Syntax ist die gleiche. Für Excel etc. gibt es dann spezielle befehle wie man die Zellen anspricht etc.

Wäre jetzt ein Beispiel wie das siehe aufgabenstellung aussähe in vb.net
Zwar nicht in xls sondern in csv, dann in Excel öffnen und als Trennzeichen ; auswählen, dann hast du es in Excel

Imports System.io

Dim dir as Directory(PFAD)
Dim file as String
Dim i as Integer
dim x as String
dim fs as new filestream(z. B. "c:\test.csv")
dim fw as new streamwriter(fs)
Dim fss as filestream
dim fr as Filereader
'gehe in Ordner (dir s.o.) alle Dateien durch
For each file in getfiles(dir)
'wenn es eine Textdatei ist)
if instr(file, ".txt")
'öffne die Datei
fss = new System.io.filestream(file)
fr = new System.io.filereader(fss)
'solange Ende der Datei nicht erreicht ist
while fr.peek <> -1
'lese zeile und speichere in x
x = fr.readline
'nehme das 3 zeichen aus jeder zeile)
x = mid(x,3,1)
'schreibe es in die CSV datei
'bei csv dateien kannst du einfach mit ; andere spalten ansprechen
'bsp. fw.writeline(x & ";")
'nur 1 spalte
fw.writeline(x)
fr.close
wend
end if
next
fw.close

war jetzt so ungefähr aus dem Kopf, also könnten einige Syntaxfehler drin sein.
Mit ' schreibt man kommentare.
 
Zuletzt bearbeitet:
Zurück
Oben