AGB  ·  Datenschutz  ·  Impressum  







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

ole error 800a03Ec

Ein Thema von eragon123 · begonnen am 12. Jun 2010 · letzter Beitrag vom 12. Jun 2010
Antwort Antwort
eragon123

Registriert seit: 6. Mär 2010
53 Beiträge
 
#1

ole error 800a03Ec

  Alt 12. Jun 2010, 21:33
Ich schreibe gerade ein Programm welches unter anderem Daten per OLE aus einem Excel Blatt ausließt. Nachdem dies lange Zeit funktioniert hat geht es jetzt komischer Weise plötzlich nicht mehr obwohl ich eigentlich nichts verändert habe. Nur Code der diesen Bereich gar nicht betrifft. Aufgetreten ist der Fehler: ole error 800a03Ec. Ich hoffe ihr könnt mir helfen den zu beheben. Ich nutze Delphi 7 und Excel 2003.
  Mit Zitat antworten Zitat
daywalker9

Registriert seit: 1. Jan 2010
Ort: Leer
594 Beiträge
 
Delphi XE3 Professional
 
#2

AW: ole error 800a03Ec

  Alt 12. Jun 2010, 21:57
Zeig doch mal ein bisschen Code, wo der Fehler aufläuft
Lars
  Mit Zitat antworten Zitat
eragon123

Registriert seit: 6. Mär 2010
53 Beiträge
 
#3

AW: ole error 800a03Ec

  Alt 12. Jun 2010, 22:04
Das sieht so aus (Ausschnitt in dem der rote Balken erscheint).

Delphi-Quellcode:
procedure TForm1.einlesen;
var excel: Variant; i,a: Integer;
begin
  try
    Excel := CreateOleObject('Excel.Application');
  except
    ShowMessage('Excel konnte nicht gestartet werden!');
    Exit;
  end;

  // Laden
  try
    Excel.workbooks.open(edtspeicherort.Text);
  except
    ShowMessage('Datei konnte nicht geöffnet werden');
    Excel.free;
    Exit;
  end;

  excel.EditDirectlyInCell := True; // Hab versucht ob das vielleicht hilf?? Tut es nicht...

  // Daten lesen
  anzahl := excel.cells[1,2].value; //Anfangsdaten
  setlength(maxwert,anzahl);
  pb1.Max := anzahl;
  maxwert[0] := excel.cells[3,4].value;


  for i := 0 to anzahl do // So viele Datensätze werden eingelesen
  begin
    maxwert[i] := excel.cells[3+summe(i),4].value; //Aktuelle Anzahl an Werten // HIER meckert er!!
    datum[i+1] := excel.cells[3+summe(i),2].value;
    pb1.Position := i;
Wobei:
Delphi-Quellcode:
    datum: array[1..100] of string;
    maxwert: array of Integer;
    anzahl: Integer;
Aber wie gesagt es hat lange Zeit funktioniert... komischer Weise tritt der Fehler erst seit kurzen auf.
  Mit Zitat antworten Zitat
daywalker9

Registriert seit: 1. Jan 2010
Ort: Leer
594 Beiträge
 
Delphi XE3 Professional
 
#4

AW: ole error 800a03Ec

  Alt 12. Jun 2010, 22:25
Was genau macht den Summe(i) ?
Lars
  Mit Zitat antworten Zitat
eragon123

Registriert seit: 6. Mär 2010
53 Beiträge
 
#5

AW: ole error 800a03Ec

  Alt 12. Jun 2010, 22:27
Delphi-Quellcode:
function TForm1.summe(index: Integer): Integer;
var i: Integer;
begin
  result := 0;
  if index > 0 then
  begin
    for i := 0 to index do
      Inc(Result,maxwert[i]+5);
  end;
end;
Das ganze springt einfach an die richtige Stelle im Excel sheet in dem alle vorherigen Datensätze in der neuen Koordinate berücksichtigt werden.
  Mit Zitat antworten Zitat
eragon123

Registriert seit: 6. Mär 2010
53 Beiträge
 
#6

AW: ole error 800a03Ec

  Alt 12. Jun 2010, 23:28
Problem scheint erstmal behoben zu sein. Ich hab an da noch ein -1 an 2 Stellen vergessen gehabt,
  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 08:56 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