Autor Thema: Excel.Application und Workbooks.Open  (Gelesen 1883 mal)

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Excel.Application und Workbooks.Open
« am: 03.11.04 - 22:06:28 »
Ich muss Daten aus Excel in Notes importieren.

User wählt über NotesUIWorkspace.OpenFileDialog ein File aus und dann wird Zeile für Zeile ein neues Notes-Dokument angelegt und Werte übernommen.

Den OpenFileDialog kann man ja anpassen, so dass nur *.xls - Dateien angezeigt werden.
Wird allerdings eine gefakte Excel-Datei ausgewählt (z.B. ein umbenanntes GIF-Bild), so werden diese "Daten" trotzdem importiert, es kommt dann natürlich nur Müll an, also unlesbarer Text.

Wie kann ich abfragen, ob die gewählte Excel-Datei (über vXLObject.Workbooks.Open strFilename) wirklich eine Excel-Datei ist?

Habe in Excel jetzt leider keine Möglichkeit gefunden....

Ein Fehler wird nicht produziert, Ein LotusScript - Errorhandler (on Error goto errHandler) schlägt nicht zu.
« Letzte Änderung: 03.11.04 - 22:09:16 von TMC »
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Excel.Application und Workbooks.Open
« Antwort #1 am: 03.11.04 - 22:11:53 »
Kannst Du eigentlich nur versuchen, ob Du gültige Informationen auslesen kannst wie Spreadsheet-Name u.ä. oder ob da Müll daherkommt
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re: Excel.Application und Workbooks.Open
« Antwort #2 am: 03.11.04 - 22:19:00 »
Hmm, eigentlich nicht sehr schön, weil ich (bzw. der User) dann etwas eingeschränkt wäre.

Wenn man in Excel 2000 eine gif-Datei öffnet, kommt zumindest eine "Textkonvertierungs-Agent"-Box; wenn man aber eine Excel-Datei in .gif umbenennt, kommt diese Box nicht.

Excel stellt also intern fest, ob es eine Excel-Datei ist.
Eine Property hab ich da leider nicht gefunden. Hoffe dass es da was gibt....

Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Excel.Application und Workbooks.Open
« Antwort #3 am: 03.11.04 - 22:32:38 »
Also, die MS-Files tragen alle in den ersten paar Bytes eine Signatur, aufgrund dieser Signatur identifiziert MS die eigenen Dateien, deshalb das beobachtete Verhalten. Leider wird diese Ueberprüfung von fast keinem anderen Programm durchgeführt, wenn auf MS-Dateien zugegriffen wird. Du kannst das natürlich hacken, indem Du die Datei binär öffnest und die ersten paar Bytes einliesest. Entweder Du schaust Dir die Struktur an, oder Du suchst bei MS (wahrscheinlich auf dem TechNet) nach der Dokumentation dieser Signaturen, bin aber nicht sicher, ob MS das wirklich veröffentlicht hat.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re: Excel.Application und Workbooks.Open
« Antwort #4 am: 03.11.04 - 22:36:41 »
Danke für die Info Jens.

Ich könnte ja auch Excel-Methoden nutzen (also nicht LS), nur leider ist mir keine Property bekannt, wie ich das auslesen könnte bei

Code
	Set vXLObject = CreateObject( "Excel.Application" )
	vXLObject.Workbooks.Open strFilename
	Set vXLWorkbook = vXLObject.ActiveWorkbook
	Set vXLSheet = vXLWorkbook.ActiveSheet
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Excel.Application und Workbooks.Open
« Antwort #5 am: 03.11.04 - 22:40:42 »
Ich glaube nicht, dass man das auslesen kann, ausser man liest das File selber ein.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz