AGB  ·  Datenschutz  ·  Impressum  







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

OleVariant auf 'nil' prüfen

Ein Thema von orchanin · begonnen am 17. Jan 2006 · letzter Beitrag vom 17. Jan 2006
Antwort Antwort
orchanin

Registriert seit: 14. Jun 2004
14 Beiträge
 
#1

OleVariant auf 'nil' prüfen

  Alt 17. Jan 2006, 13:06
Hi, Zusammen

in meinem programm verwende ich MSProject als COM objekt.
Logischerweise habe ich eine variable ('MSProject') von type Variant angelegt, um die zugriffe zu steuern.
Im MSProjekt alle Vorgänge werden in tabellarische form zusammengefasst. Zwischen den vorgengen kann auch lehre zeile
(ein art von 'nil'- vorgang) sein.

Wenn ich über eine schleife durch alle vorgänge durchgehe
(z.B: for i:= 1 to MSProject.ActiveProject.Tasks[i].Name) und auf so eine lehre zeile stosse,
bringt mir das Programm eine fehlermeldung, was klar ist, weil MSProject.ActiveProject.Tasks[i] = nil.
Die frage ist wie kann ich das abfangen?
if MSProject.ActiveProject.Tasks[i] = nil then... geht nicht, da MSProject von type Variant ist.

Danke.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: OleVariant auf 'nil' prüfen

  Alt 17. Jan 2006, 13:07
Du kannst die Konstante UnAssigned nehmen.

Aber wieso importierst du dir nicht Die Typbibliothek und verwendest dann die frühe Bindung?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Nightshade

Registriert seit: 7. Jan 2003
Ort: Menden
192 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: OleVariant auf 'nil' prüfen

  Alt 17. Jan 2006, 13:10
 if VarIsNull(VVariable) then ...
Christian
Killing for peace is like fucking for virginity

Nightshade
  Mit Zitat antworten Zitat
orchanin

Registriert seit: 14. Jun 2004
14 Beiträge
 
#4

Re: OleVariant auf 'nil' prüfen

  Alt 17. Jan 2006, 13:18
Ich habe versucht, aber witz dabei ist das diese variable (für die lehre zeile) hat eine adresse ($000000), auf die nicht zugegriffen werden kann. Also sie ist nicht ganz lehr.
  Mit Zitat antworten Zitat
orchanin

Registriert seit: 14. Jun 2004
14 Beiträge
 
#5

Re: OleVariant auf 'nil' prüfen

  Alt 17. Jan 2006, 13:23
Noch ein paar wörtchen dazu.
Ich habe in VB Code (Makros) ausprobiert. Dort benutzt man für die überprüfung 'Is Nothing'-routiene
If Not (ActiveProject.Tasks(i) Is Nothing) Then... Das geht
Aber wie setze ich das in delphi um?
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#6

Re: OleVariant auf 'nil' prüfen

  Alt 17. Jan 2006, 15:01
Das kommt auf den jeweiligen Typ an.
Sieh dir mal in der Delphi-Hilfe folgendes an: VarIsClear, VarIsEmpty, VarIsNull und Unassigned.
  Mit Zitat antworten Zitat
Ferber

Registriert seit: 9. Mär 2005
Ort: Wien Umgebung
155 Beiträge
 
Delphi 2006 Architect
 
#7

Re: OleVariant auf 'nil' prüfen

  Alt 17. Jan 2006, 15:18
Dieser CodeSchnipsel hilft vielleicht. Greife so auf Excel zu.
Delphi-Quellcode:
function TExcel.GetApplication:Variant;
begin
  if VarType(FExcelApp)=varEmpty then
  try
    FExcelApp:=GetActiveOleObject('Excel.Application');
    FExcelApp.Visible:=True;
  except
    FExcelApp:= CreateOleObject('Excel.Application');
    FExcelApp.Visible:=True;
  end;
  Result:=FExcelApp;
end;
Otto
  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 21:46 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