Einzelnen Beitrag anzeigen

Kagegan1337

Registriert seit: 14. Sep 2013
4 Beiträge
 
#1

Open Office in Delphi integrieren

  Alt 14. Sep 2013, 14:13
Hallo liebe com,
bin zwar recht neu hier in dem Forum und auch nicht der erfahrenste delphispezialist.
Zur Zeit lerne ich in der Fachoberschule ein wenig mit Delphi zu arbeiten, langweile mich dort aber ziemlich, also kam mein Lehrer auf die gloreiche Idee mir eine Sonderaufgabe zu geben. Ich solle doch gemessene Werte über eine "Vellemann Karte" aufnehmen und direkt in Detei speichern. Die Werte sollen in einem Array und einem Stringgrid ausgelesen werden. Okay das war zu einfach. Jetzt soll ich diese Werte allerdings an MS Excel übergeben und da mein Lehrer davon keine Ahnung soll ich das auch gleich dokumentieren. Da ich auf meinem Heim-PC kein MS Excel habe sondern nur Open Office dachte ich mir, ich schreibe die Dokumentation über das Übergeben von Daten and Open Office. Feststellen musste ich jetzt das mir ja noch die Komponenten fehlen das mit Delphi auszuführen. Also googelomaten eingeschalten, 'n zip runtergeladen in den die Units zum Installieren von OO Automatisierung enthalten sind und zack da is mein Problem. Laut der nebeiliegen PDF sind die Units einfach zu installieren, aber mir wird beim komperlieren immer der Fehler > Undefinierter Bezeichner: 'ValueFromIndex' < angezeigt. Und nu frag ich euch woran das liegen könnte.
Danke schon mal im Vorraus und bitte seid gnädig was mein Vorwissen angeht
Quellcode der Unit

Code:
unit OOTable;

interface

uses Classes, Contnrs, ooObject, Variants;

type
  TOOTable=class(TObject)
  private
    FvTable: Variant;

  protected
    property vTable:Variant read FvTable;
  public
    constructor create(AvTable:Variant); reintroduce;
    procedure pInitialize(AiRows, AiCells:Integer);

    procedure pSetTableValues(AoStringList:TStringList);
  end;

implementation

uses SysUtils;

{ TOOTable }

constructor TOOTable.create(AvTable:Variant);
begin
  FvTable:=AvTable;
end;

procedure TOOTable.pInitialize(AiRows, AiCells: Integer);
begin
  if NOT VarIsEmpty(vTable) then begin
    vTable.initialize(AiRows,AiCells);
  end;
end;

procedure TOOTable.pSetTableValues(AoStringList: TStringList);
var iIndex:Integer;
  vCell:OleVariant;
  aCellName, aCellValue:String;
begin
  if NOT VarIsEmpty(vTable) then begin
    for iIndex := 0 to AoStringList.Count - 1 do begin
      aCellName:=AoStringList.Names[iIndex];
      aCellValue:=AoStringList.ValueFromIndex[iIndex];
      vTable.getCellByName(aCellName).SetString(aCellValue);
    end;
  end;
end;

end.
  Mit Zitat antworten Zitat