Seite 1 von 1

Officeclipboard weiterbearbeiten

Verfasst: 21.12.2005 13:46
von ramseier
Hallo,

ich habe folgende Aufgabenstellung:

Ich bin momentan dabei, Tabellen von Webseiten in Excel zu übertragen.
Die Tabellen sind Auflistungen von Dokumenten incl. Links zu den Dateien.
Die Dokumentennamen sind jeweils verlinkt mit den dazugehörigen Dateien. Das sieht dann ungefähr so aus:

Dokumentenname | Dokumentenowner | Last Update
Namenslistentemplate | Karl Osmann | 14.05.2005

Wenn ich die kopierte Tabelle in Word oder in Ecxel einfüge, wird der Link dem Dokumentennamen hinterlegt und die Tabelle annähernd wie auf der Webseite eingefügt.

Wenn ich diese Tabelle nun kopiere und in einen Texteditor einfüge oder in Purebasic einlese, wird der dazugehörige Link nicht mit eingefügt.

Ich bräuchte nun ein Programm mit dem ich die Daten incl. Link aufsplitten, und als CSV Daten oder in Form eines Tabellengadgets ausgeben kann.

So, dass ich nicht mehr jede Zeile einzeln kopieren muss, sondern jeweils die Spalte mit den Links einzeln, dann die Zeile mit den Dokumentennamen etc. kopieren kann.

Kann ich das mit Purebasic umsetzen oder kann Purebasic nicht auf das Officeclipboard in der Form wie es Office tut zugreifen?[/url]

Verfasst: 21.12.2005 14:39
von bobobo
Clipboard? wozu? Mach das mit CSV

Wenn das CSV-Format dann auch noch "korrekt" ist, sieht
die ExcelTabelle auch gleich richtig aus.
Korrekt heisst hier Werte in Hochkommata und dazwischen ein KOMMA

"wert01","wert02","wert03"
"wert11","wert12","wert13"

sowas als csv gespeichert kann Excel direkt öffnen.

und HTML-Dateien kann man lokal speichern

Code: Alles auswählen

url.s="http://www.odoaker.de/minafa1.gif"
Filename.s="d:\erwin.txt"
DeleteFile("d:\erwin.txt")
Debug URLDownloadToFile_(0,url.s,Filename.s,0,0)
If ReadFile(0,Filename.s)=0
MessageRequester("","der download hat ja mal garnicht geklappt",0)
EndIf
(alternativ könnte man die Datei auch als HTML-Seite lokal speichern
oder sich aus dem BrowserCache zusammensuchen.)

Statt dem Schweinebild kann da auch die Url zu Deiner Tabelle stehen.
Die gedownloadete Datei solltest Du dann "zu Fuß" analysieren und die entsprechende Tabelle aufdröseln und in eine CSV-Datei speichern

Wer ist Karl Osmann?

Verfasst: 21.12.2005 14:48
von ramseier
hmm.. das bringt mich überhaupt nicht weiter.
Das sind HTML-Seiten die nicht nur aus Tabellen bestehen. Da ist ein Header, die Navigation, Related Links etc. und kommt aus einem CMS.
Bei den Tabellen handelt es sich um Listen mit bis zu 1000 Dokumenten/-Links, da erscheint mir das manuelle Analysieren des Quellcodes eher suboptimal.

Bei der Quellcodelösung muss ich den ganzen unbrauchbaren Quatsch wie den Header etc. irgendwie weglöschen. Da die Seiten aber aus dem CMS kommen und zudem noch keiner festen Struktur folgen, für die ich eine Regular Expression schreiben könnte, denke ich, dass die Herangehensweise über das Clipboard immernoch das Logischste.

Die direkte Speicherung scheidet außerdem noch wegen der Autentifizierung aus. Der Aufruf muss über den Internetexplorer geschehen, sonst bekomme ich einen "Access Denied" zurück.

Verfasst: 21.12.2005 15:01
von bobobo
also Seite lokal speichern im IE geht doch wohl aber.
da kann man glaub ich sogar das Format vorgeben.

Aber gut ..
das Suboptimale bleibt dann ja bestehen.

Wobei das Analysieren einer Datei eigentlich echt kein Ding ist.
Auch große Dateien sind da flott erledigt (PBOSL's FastFile sei Dank)

Verfasst: 21.12.2005 15:09
von ramseier
Es handelt sich um ungefähr 500 - 1000 Seiten.
Wenn ich die Seiten alle einzeln mit dem IE speichere und dann analysiere ist es vom Zeitaufwand deutlich mehr, als Copy & Paste.

Verfasst: 21.12.2005 15:27
von bobobo
Einzelseiten .. ach Schreck