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 |