Delphi-PRAXiS
Seite 3 von 6     123 45     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Richedittext nach Excel exportieren ? (https://www.delphipraxis.net/64116-richedittext-nach-excel-exportieren.html)

messie 5. Mär 2006 14:23

Re: Richedittext nach Excel exportieren ?
 
Hast Du eine TExcelApplication auf Deinem Formular platziert und ihren Namen auf "xl" gesetzt? Dann sollte es gehen.
Habs auch mal ausprobiert, leider scheint die erzeugte neue Datei nicht gespeichert zu werden sondern im Nirvana zu verschwinden. Nur der interne Mappenzähler "Mappe6" scheint zu funktionieren.

Grüße, Messie

Vader 5. Mär 2006 14:48

Re: Richedittext nach Excel exportieren ?
 
wau,

ja er hat den text 'marabu' in eine neue excelmappe in tabelle4 in die zelle B1 exportiert, nicht schlecht !
ich brauche das aber in eine schon erstellte exceldatei, und den code habe ich bis jetzt programmiert:

Delphi-Quellcode:
//   excel öffnen


 function TForm1.OpenExcel : Boolean;  
begin
  Result:=True;
  Try
    ExcelApplication1.Connect;
    ExcelApplication1.UserControl := False;
    ExcelApplication1.AskToUpdateLinks[FLCID]:=False;
  Except
    Result:=False;
    end;
end;


//   excel activieren


procedure TForm1.Excelactive2Click(Sender: TObject);
begin
 exceldateiffnen1.Enabled:=OpenExcel;
  excelclose1.Enabled:=exceldateiffnen1.Enabled;
end;



//   exceldatei öffnen


procedure TForm1.Exceldateiffnen1Click(Sender: TObject);
var
  FExcelFilename : OleVariant;
begin
  FExcelFilename:='c:\alle.xls';
  ExcelApplication1.Workbooks.Open(FExcelFilename,EmptyParam,EmptyParam,EmptyParam,
                                  EmptyParam,EmptyParam,EmptyParam,EmptyParam,
                                  EmptyParam,EmptyParam,EmptyParam,EmptyParam,
                                  EmptyParam,FLCID);
  ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Item['alle.xls']);
  ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Sheets.Item['Tabelle1'] as _WorkSheet);
end;


und jetzt würde ich einen umgestrickten code brauchen so wie von marabu wie ich den richedittext in die tabelle 1 von alle.xls exportiere ????

Delphi-Quellcode:
procedure TDemoForm.ButtonClick(Sender: TObject);
var
  wb: ExcelWorkbook;
  ws: ExcelWorkSheet;
  cellrange: Range;
begin
  xl.Connect;
  wb := xl.WorkBooks.Add(null, GetUserDefaultLCID);
  ws := wb.Sheets.Add(null, null, 1, null, GetUserDefaultLCID) as ExcelWorkSheet;
  cellrange := ws.Range['B1', 'B1'];
  cellrange.Value2 := 'marabu';
  xl.Disconnect;
end;

mfg vader

marabu 5. Mär 2006 14:52

Re: Richedittext nach Excel exportieren ?
 
Hast du das schon versucht?

Delphi-Quellcode:
cellrange.Value2 := RichEdit.Lines.Text;
marabu

messie 5. Mär 2006 15:36

Re: Richedittext nach Excel exportieren ?
 
So gehts beim mir:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  wb: ExcelWorkbook;
  ws: ExcelWorkSheet;
  r: Range;
begin
  try
    xl.Connect;
    wb := xl.Workbooks.Open('c:\SonntagsDemo.xls',EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,GetUserDefaultLCID);
    ws := wb.Sheets.Get_Item(1) as ExcelWorkSheet;
    r := ws.Range['B1', 'B1'];
    r.Value2 := RichEdit1.Lines.Text;
  finally
    xl.Workbooks.Close(GetUserDefaultLCID);
    xl.Disconnect;
  end;
end;
Beim Schließen gibt's noch die Speicherabfrage, das direkte "stille" Speichern ist mir nicht gelungen. Das mit dem Get_Item habe ich in der Excel97.pas rausgesucht, das wird nämlich in der IDE nicht angeboten.

Grüße, Messie

marabu 5. Mär 2006 15:46

Re: Richedittext nach Excel exportieren ?
 
Hallo Messie,

hast du mal die Methode Save von TExcelApplication ausprobiert? Sie müsste doch eigentlich das Modified Flag zurücksetzen und ein stilles Beenden ermöglichen...

Grüße vom marabu

messie 5. Mär 2006 16:33

Re: Richedittext nach Excel exportieren ?
 
Nö, tut sie nicht, will auch mit save immer die Bestätigung. Nach ein paar Versuchen wollte sie auch jedesmal eine "WIEDER.XLW" mitspeichern, bei dem Zugriff gab es aber eine OLEException. Vielleicht muß man dazu in die Excel-Einstellungen eingreifen.
Aber das Prinzip ist ja erstmal ok... wieder was gelernt.

Grüße, Messie

Vader 5. Mär 2006 17:11

Re: Richedittext nach Excel exportieren ?
 
hallo ,

super, super, jetzt bin ich meiner aufgabe schon sehr sehr nahe dran, das hat mir jetzt sehr geholfen,
könnt ihr mir noch sagen was die kleinen rechtecke in der excelzelle vor und nach dem exportierten text sind ?

mfg vader

marabu 5. Mär 2006 17:17

Re: Richedittext nach Excel exportieren ?
 
Kannst du ein Photo davon machen?

marabu

messie 5. Mär 2006 17:34

Re: Richedittext nach Excel exportieren ?
 
Zitat:

Zitat von Vader
könnt ihr mir noch sagen was die kleinen rechtecke in der excelzelle vor und nach dem exportierten text sind ?
mfg vader

Ich hab' keine kleinen Rechecke bei mir. Ich meine mich erinnern zu können, daß Office gerne kleine Rechtecke verwendet, wenn es Zeichen nicht erkennt (ähnlich den Fragezeichen wenn Du chinesisch benutzt). Das können Sonderzeichen, Begrenzungszeichen sein oder so. Du holst Dir doch Deine Zeilen aus dem Web, da kann so'n Text in Sonderzeichen eingekapselt sein. Übergib' die RichEdit.Lines.Text an einen string-Puffer und wirf das erste und letzte Zeichen vor der Übergabe einfach raus - ich glaube Du brauchst sie nicht.

Grüße, Messie

Vader 5. Mär 2006 17:56

Re: Richedittext nach Excel exportieren ?
 
hallo,
das könnte stimmen, ich hole meine daten von internet, komisch sie sind nicht immer vorhanden,
mfg vader


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:36 Uhr.
Seite 3 von 6     123 45     Letzte »    

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