![]() |
Fehler bei Import aus Excel97-Datei
Hallo,
bin gerade dabei Daten aus einer Excel97-Datei in ein StringGrid zu importieren. Hier der Code:
Delphi-Quellcode:
Dieser Programmrumpf funktioniert, wenn die Datei unter Excel 2003 abgespeichert wurde.
begin
ExAP1.Workbooks.Open(filename, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, 0); ExWB1.ConnectTo(ExAP1.ActiveWorkbook); ExWS1.ConnectTo(ExWB1.Sheets.item['Gesamtliste 2008'] as _Worksheet); sg4.Cells[0,0]:=ExWS1.Cells.Item[4,4]; //Werte in StringGrid importieren ExAp1.Quit; ExAp1.Disconnect; end; Wurde sie unter Excel 97 abgespeichert, kommt die Abfrage: Zitat:
Delphi-Quellcode:
Da der Daten-Import im Hintergrund ablaufen soll, muss die Abfrage vermieden werden.
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Grids, OleServer, ExcelXP, ComCtrls; Der PC, von dem ich die Daten einlesen möchte, ist ein Maschinen-Steuerrechner mit Windows NT, der nicht durch einen neueren ersetzt werden kann (nur zur Vorbeugung, falls jemand empfiehlt einen neuen PC mit Excel 2003 zu nehmen). Wer hat einen Tipp, um diesen Fehler zu vermeiden? Vielen Dank. Gruß, Linkat |
Re: Fehler bei Import aus Excel97-Datei
Versuch' mal schreibgeschütztes öffnen:
Delphi-Quellcode:
ExAP1.Workbooks.Open(filename, EmptyParam, {ReadOnly:=}True, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, 0); |
Re: Fehler bei Import aus Excel97-Datei
Danke shmia,
hatte ich auch schon getestet. Funktioniert leider nicht. |
Re: Fehler bei Import aus Excel97-Datei
Ergänze ein
Delphi-Quellcode:
sg4.Close(SaveChanges:=False);
|
Re: Fehler bei Import aus Excel97-Datei
Hallo Bernhard,
wenn ich die Zeile einfüge kommt beim Compilieren der Fehler: Zitat:
|
Re: Fehler bei Import aus Excel97-Datei
Zitat:
|
Re: Fehler bei Import aus Excel97-Datei
Vielen Dank Bernhard,
Delphi-Quellcode:
ist die Lösung.
ExWB1.Close(false);
sg4 ist ein StringGrid, geht natürlich aus dem Programmschnipsel nicht eindeutig hervor. Ein dickes Lob an das Forum Dephi-PRAXIS und seine User: sehr schnell und sehr kompetent. Gruß und schönes Wochenende, Linkat |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz