Zurück zur Startseite des DSAwiki

Anleitung zum Standardmakro

  1. Mit Excel die Datei öffnen, die umgewandelt werden soll
  2. Den VBA-Editor öffnen (Menü: Extras/Makro/Visual-Basic-Editor) oder 'Alt-F11'
  3. In der linken Spalte sind die geöffnetet Dokumente angezeigt
  4. Dort auf 'VBA-Projekt' (mit dem Namen des aktuellen Dokuments, also nicht bei Eurotools!) mit der rechten Maustaste hinklicken
  5. Im Kontextmenü Einfügen/Modul wählen
  6. Im rechten grossen Fenster erscheint eine leere weisse Seite (evtl. steht oben Option Explicit)
  7. Die ganze Prozedur unten kopieren und auf diese leere weisse Seite einfügen
  8. Die Variablen Startspalte, Startzeile, Endspalte, Endzeile an das Dokument anpassen
  9. Den Dateinamen des Zieles angeben
  10. 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

DSAwiki/Excel2wiki/VBAmakro1 (zuletzt geändert am 2007-11-01 17:25:09 durch localhost)