![]() |
Excel -Export, NumberFormat '0.00' klappt nicht
Hallo #,
mit folgendem Code wird wird eine Zelle formatiert.
Delphi-Quellcode:
Klappt soweit, nur erkennt Excel damit nur selber das Format.
sFormat:= 'Standard'; // in engl. delphis muss es 'General' heissen ...
sRef:= RefToCell(iCol+1, iRow+1); Sheet.Range[sRef,sRef].NumberFormat:= sFormat; Eie ursprünglich 1,00 wird zu 1. Nehme ich '0.00' (laut Makro ist das so) kommt eine Fehlermeldung "NumberFormat konnte nicht gesetzt werden". Nehme ich '0,00' wird ein benutzerdefiniertes Format angelegt, was Murks wird (Zellen lassen sich nicht summieren). Wie heisst den das richtige Format ? #Update:# Es scheint doch zu klappen, ist aber doch nicht das richtige für mich. Danke Heiko |
Re: Excel -Export, NumberFormat '0.00' klappt nicht
Hallo,
versuch es mal mit
Delphi-Quellcode:
sFormat := '#.###.##0,00';
sRef:= RefToCell(iCol+1, iRow+1); Sheet.Range[sRef,sRef].NumberFormat:= sFormat; |
Re: Excel -Export, NumberFormat '0.00' klappt nicht
Hallo,
danke für den Tip. Das Problem hat sich "gelöst". Da es eine allgemeine Export-Funktion ist, darf ich gar kein "Numeric"-Format nehmen. Das sieht bei Personalnummern sonst merkwürdig aus ;) Was nervt ist, dass er ziemlich lange braucht zum Formatieren. Das ich aber jede Zelle einzeln anfasse, liegt es wohl daran. Wenn ich mal Zeit habe, lasse ich mir da was einfallen. Heiko |
Re: Excel -Export, NumberFormat '0.00' klappt nicht
Hallo,
ein kleiner Auszug aus einem meiner Programme, eventuell hilft Dir das etwas:
Delphi-Quellcode:
Var
fSummeExcel : Extended; fSummeIV : Extended; fDifferenz : Extended; fMonatsUmsatz : Extended; sEMessage : String; iErrorCode : Word; sExcelFile : String; sTabelle : String; iRecordCount : Integer; i : Integer; lcid : Integer; ea : TExcelApplication; ewb : TExcelWorkbook; ews : TExcelWorkSheet; begin // Dat dauert wat. Screen.Cursor := crHourGlass; // Diese ID wird zur Kommunikation mit Excel benötigt. lcid := LOCALE_USER_DEFAULT; Try // Summenvariabeln initialisieren. fSummeExcel := 0; fSummeIV := 0; // SQL-Statement für Summe der Umsätze holen fmDataBase.qrySelect.SQL.Text := fmDataBase.fnGetSQL(100); // und Jahreszahl zuweisen. fmDataBase.qrySelect.ParamByName('JAHR').AsInteger := StrToInt(Trim(meGeschaeftsJahr.Text)); // Variabeln für die Verbindung zu Excel initialisieren ea := TExcelApplication.Create(Self); ewb := TExcelWorkbook.Create(Self); ews := TExcelWorksheet.Create(Self); Try // Verbindungsart festlegen - grundsätzlich eine neue Instanz von Excel starten. // Dies ist wichtig, da sonst Probleme mit einem bereits offenen Excel // entstehen können. ea.ConnectKind := ckNewInstance; ewb.ConnectKind := ckNewInstance; ews.ConnectKind := ckNewInstance; // Excel soll unsichtbar arbeiten, sichtbar wird es seeeeeeehr langsam. ea.Visible[lcid] := False; .. diverses Allerlei Finally // Verbindung zu Excel beenden. Try ewb.Disconnect; ews.Disconnect; ea.Application.Quit; ea.Disconnect; ea.Quit; ews.Free; ewb.Free; ea.Free; Except On e : Exception Do Begin MessageDlg('Fehler beim Trennen der Verbindung zu Excel. ' + #13 + e.Message,mtError,[mbok],0); End; End; End; Except On e : Exception Do Begin MessageDlg(e.Message,mtError,[mbok],0); End; End; Screen.Cursor := crDefault; end; |
Re: Excel -Export, NumberFormat '0.00' klappt nicht
Hallo,
Zitat:
Usichtbar ist es bei mir auch. Danke Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:46 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-2025 by Thomas Breitkreuz