AGB  ·  Datenschutz  ·  Impressum  







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

Excel Automation

Ein Thema von Cogito · begonnen am 13. Dez 2011 · letzter Beitrag vom 15. Dez 2011
Antwort Antwort
Benutzerbild von Chemiker
Chemiker

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

AW: Excel Automation

  Alt 14. Dez 2011, 13:54
Hallo,

if VarIsEmpty(MSExcel) = false then nicht auf TRUE oder FALSE prüfen, dass kann zu Probleme führen.
besser:
if not (VarIsEmpty(MSExcel) then
DisplayAlerts wird auf TRUE oder FALSE gestellt, mit SaveChanges hat das nichts zu tun.

Excel schließen ohne nachfragen:
Delphi-Quellcode:
excel.ActiveWorkBook.Saved:= TRUE;
excel.Workbooks.Close;
excel.Quit;
excel:= Unassigned;
Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Excel Automation

  Alt 14. Dez 2011, 14:00
Hallo,

if VarIsEmpty(MSExcel) = false then nicht auf TRUE oder FALSE prüfen, dass kann zu Probleme führen.
Kannst du ein beispiel liefern wie man dieses Problem in Delphi herstellen kann.
In C/C++ ist klar. Da wird ja in jeder Bibliothek mindestens 10* TRUE und FALSE neu wenn du pech hast mit FALSE=0; TRUE=1 neu definiert.

Excel schließen ohne nachfragen:
Delphi-Quellcode:
excel.ActiveWorkBook.Saved:= TRUE;
excel.Workbooks.Close;
excel.Quit;
excel:= Unassigned;
Bis bald Chemiker
wenn man mit Variants arbeitet kann man ein Exceldatei mittels
FWorkBook.Close(SaveChanges:=False); schließen und die Rückfrage vermeiden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Excel Automation

  Alt 14. Dez 2011, 22:08
Hallo Bernhard,

mach doch mal

Delphi-Quellcode:
if boolean(4) then showmessage('4 ist true');
if boolean(4)=true then showmessage(inttostr(integer(true)) ist gleich 4');
Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Chemiker
Chemiker

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

AW: Excel Automation

  Alt 15. Dez 2011, 09:36
Hallo,

Zitat:
Kannst du ein beispiel liefern wie man dieses Problem in Delphi herstellen kann.
In C/C++ ist klar. Da wird ja in jeder Bibliothek mindestens 10* TRUE und FALSE neu wenn du pech hast mit FALSE=0; TRUE=1 neu definiert.
http://www.delphi-treff.de/tutorials...faengerfehler/

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

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Excel Automation

  Alt 15. Dez 2011, 09:40
Hallo Bernhard,

mach doch mal

Delphi-Quellcode:
if boolean(4) then showmessage('4 ist true');
if boolean(4)=true then showmessage(inttostr(integer(true)) ist gleich 4');
Gruß
K-H
Autsch. An diese harten Casts auf ungültige Enumwerte hatte ich gar nicht mehr gedacht.
Aber wer macht auch solche fehleranfälligen Konstrukte.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort


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 22:00 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