Zurück zur Startseite des DSAwiki |
Anleitung zum Standardmakro
- Mit Excel die Datei öffnen, die umgewandelt werden soll
- Den VBA-Editor öffnen (Menü: Extras/Makro/Visual-Basic-Editor) oder 'Alt-F11'
- In der linken Spalte sind die geöffnetet Dokumente angezeigt
- Dort auf 'VBA-Projekt' (mit dem Namen des aktuellen Dokuments, also nicht bei Eurotools!) mit der rechten Maustaste hinklicken
- Im Kontextmenü Einfügen/Modul wählen
- Im rechten grossen Fenster erscheint eine leere weisse Seite (evtl. steht oben Option Explicit)
- Die ganze Prozedur unten kopieren und auf diese leere weisse Seite einfügen
- Die Variablen Startspalte, Startzeile, Endspalte, Endzeile an das Dokument anpassen
- Den Dateinamen des Zieles angeben
- Das Makro ausführen
Standardmakro
(=ohne Veränderungen eine Exceltabelle 1 zu 1 übernehmen)
Sub Excel2Wiki()
Dim fHandle, i, j As Integer
Dim StartZeile, StartSpalte, EndZeile, EndSpalte As Integer
Dim ZeilenText, ZellInhalt, Delimeter, DateinName As String
fHandle = FreeFile()
Delimeter = "||" 'das ist das wichtige Trennzeichen
Formatierungstags = "" 'bisher noch nicht eingebaut
StartZeile = Val(InputBox("Ab welcher Zeile soll umgewandelt werden ?", _
"Startzeile - Schritt 1 von 5", "1"))
'nach belieben als Zahl eintragen a=1, z=26
StartSpalte = Val(InputBox("Ab welcher Spalte soll umgewandelt werden ?" + _
vbCrLf + "(z.B. A=1, Z=26, AG=33)", _
"Startspalte - Schritt 2 von 5", "1"))
EndZeile = Val(InputBox("Bis zu welcher Zeile soll umgewandelt werden ?", _
"Endzeile - Schritt 3 von 5", "100"))
'nach belieben als Zahl eintragen a=1, z=26, Spalte AG = z+7=33
EndSpalte = Val(InputBox("Bis zu welcher Spalte soll umgewandelt werden ?" + _
vbCrLf + "(z.B. A=1, Z=26, AG=33)", _
"Endspalte - Schritt 4 von 5", "26"))
DateiName = InputBox("Wie soll die Ausgabedatei heissen ?", _
"Dateiname - Schritt 5 von 5", "c:\dsawiki-tabelle.txt")
Open DateiName For Output As #fHandle
For i = StartZeile To EndZeile
For j = StartSpalte To EndSpalte
ZellInhalt = Cells(i, j)
'leere Zellen mit " " füllen (sonst keine richtige Darstellung im wiki)
If ZellInhalt = "" Then ZellInhalt = " "
If ZellInhalt = Val(ZellInhalt) Then ZellInhalt = Format(ZellInhalt)
ZeilenText = ZeilenText + Delimeter + Formatierungstags + ZellInhalt
Next j
Print #fHandle, ZeilenText + Delimeter
ZeilenText = ""
Next i
Close #fHandle
End Sub Wenn Du etwas ändern willst, kannst einfach hier auf Editieren klicken und losschreiben...
Zurück zur Startseite des DSAwiki |
