AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Excel Problem mit OleObject

Ein Thema von ibp · begonnen am 20. Aug 2007 · letzter Beitrag vom 21. Aug 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#1

Excel Problem mit OleObject

  Alt 20. Aug 2007, 12:22
Hallo,

ich habe ein TAdvStringGrid von TMS. Das wird mit Daten aus einer DB gefüllt, u.A. existieren reelle Zahlen. Es ist möglich mit TAdvStringGrid diese Tabelle als .xls abzuspeichern.

Problem:

Beim meinem Rechner kommt wenn im Grid 17,91 steht auch 17,91 im Excel-Sheet an,das ist ja auch so gewollt .

ABER

Bei einigen anderen Rechnern steht im Sheet 179.099.998.474.121


Ich gehe davon aus, dass es eine Systemeinstellung ist, hat da jemand einen Tipp oder eine Idee wo, wie und warum das ensteht?

Grüße und danke schon mal...
  Mit Zitat antworten Zitat
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 13:03
vielleicht liegts an der formatierung der spalte bzw. der zelle?!

probier vielleicht mal sowas:
oleExcelSheets1.Columns[i].NumberFormat := '@' oleExcelSheets1 ist eine "OleVariant" Variable...
und das "@" zeichen weißt der spalte das zeichen format zu
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#3

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 13:10
noch absurder...

ich kann die grid-tabelle auch als csv abspeichern. dort steht der wert mit "12,91" drin, soll ja auch.

öffnet ich die csv datei bei mir, dann steht auch in der excelausgabe das richtige drin.

öffnet der andere rechner die csv-datei, die ja richtig ist, dann steht in excel 179.099.998.474.121 drin.

mein test lag nun auf eine geänderte sprach/region einstellung. das kann es nur bedingt sein, wenn ich auf eglisch(usa) einstelle verändert er mir die anzeige in 179,099,998,474,121
aber nicht in 179.099.998.474.121

was nun sprach zeus?
  Mit Zitat antworten Zitat
Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.859 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 14:44
Hallo ibp,

das einzige was mir dazu noch einfällt sind verschiedene EXCEL – Versionen. Kann es vielleicht sein, dass die Datei mit unterschiedlichem Excel – Datei – Versionen geladen/gespeichert wird?

Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#5

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 14:50
@H2O2

ja kann schon sein dass es verschiedene excel-versionen sind, das hat aber nichts mit den excel-versionen zu tun, da die dateien ja auf dem entsprechenden rechner erstellt werden.

Ich gehe davon aus, dass es eine einstellungssache ist, habe aber nur noch nicht die richtige option/ort gefunden!
  Mit Zitat antworten Zitat
iGoA

Registriert seit: 9. Jul 2007
69 Beiträge
 
#6

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 14:50
hast Du mal probiert, die Zellen im englischen Format zu befüllen? Also mit "12.91" statt "12,91".
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#7

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 14:53
wie oben beschrieben, kommen die daten aus einer db. dort steht das format fest mit dezimalzeichen ',' so werden die datan auch in das grid übernommen, egal welche einstellung das system hat.
  Mit Zitat antworten Zitat
iGoA

Registriert seit: 9. Jul 2007
69 Beiträge
 
#8

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 15:03
Ich würde auf jeden Fall mal probieren, die Zahlen englischformatisch ins Grid zu packen und dann mal gucken, wie Excel damit kann.
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#9

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 15:09
Zitat von iGoA:
Ich würde auf jeden Fall mal probieren, die Zahlen englischformatisch ins Grid zu packen und dann mal gucken, wie Excel damit kann.
das geht leider nicht so einfach...
  Mit Zitat antworten Zitat
Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.859 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Excel Problem mit OleObject

  Alt 20. Aug 2007, 20:34
Hallo ibp,

es ist so bei TAdvStringGrid das man beim Abspeichern der xls – Datei die Formatierung zwingend auf das Englische – Format einstellen muss.
Ich vermute, wenn ich das bisher richtig verstanden habe, dass die Formatierung aus dem Grid heraus nicht in Ordnung ist.

Siehe

Delphi-Quellcode:
procedure TMainForm.AdvGridExcelIO1CellFormat(Sender: TAdvStringGrid;
  const GridCol, GridRow, XlsCol, XlsRow: Integer; const Value: WideString;
  var Format: TFlxFormat);
begin
  if (GridCol = 3) then Format.Format:='$ #,##0';
end;
Zitat:
The string you need to write in "Format.Format" is a standard Excel formatting string. It is important to note that this string must be in ENGLISH format, even if your Windows or Excel is not in English.
Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz