Telefonnummern aus HTML-Tabelle
16.03.2005 16:11:08
lisa
Habe folgendes Problem: Ich lade per VBA eine Internetseite, markiere sie mit "createTextRange" und kopiere sie in ein Excel-Sheet. Der Quellcode ist der Folgende:
Set MeinIE = CreateObject("InternetExplorer.Application")
[...]
Set oDoc = MeinIE.document
[...]
Dim bereich
Set bereich = oDoc.body.createtextrange()
bereich.execCommand ("Copy")
Workbooks.Add
Sheets("tabelle1").Activate
ActiveSheet.Paste
Das funktioniert so auch. Das Problem ist, dass sich auf der Seite eine Tabelle befindet, in der Telefonnummern enthalten sind. Die Tel-Nr. haben z.T. "0"en am Anfang, z.T. auch nicht. Das kann ich nicht beeinflussen und ich kenne die Nummern vorher nicht.
Wenn ich nun wie eben beschrieben, die Tabelle ins Excel-Sheet einfüge, sind prompt die Null(en) am Anfang der Nummern weg. Ein benutzerdefiniertes Format für die Telefonnummernspalte anzugeben ist nicht mgl, da ich ja nie weiß, wie sie aussehen. Also bleibt noch die Möglickeit, sie als Text zu formatieren. Das muß ich natürlich machen, bevor ich die Internetseite ins Excel-Sheet einfüge.
Habe den Quelltext also folgendermaßen verändert:
[...(s.o.)]
Workbooks.Add
Sheets("tabelle1").Activate
Cells.Select
Selection.NumberFormat = "@"
range("A1").Select
ActiveSheet.PasteSpecial Format:="Text"
Nun sind die Nullen noch vorhanden, wenn ich einfüge, aber es ist keine Tabelle mehr. Nun wird jede Zeile der Tabelle in nur eine Zelle geschrieben - die Spaltenunterteilung existiert also nicht mehr. Beim Einfügen habe ich natürlich auch die Möglichkeit als HTML einzufügen, dann wird die Tabelle übernommen, aber damit auch die Formatierung wieder überschrieben. Was kann ich tun?!