Excel zapis do pliku

Odpowiedz Nowy wątek
2006-07-17 13:18

Rejestracja: 14 lat temu

Ostatnio: 3 lata temu

0

Mam cos takiego...

procedure TForm1.Button1Click(Sender: TObject);
var
Excel: Variant;
Y : integer;
begin
Y:=Y+1;
Excel:=CreateOleObject('Excel.Application');  
Excel.WorkBooks.Add;                                
Excel.displayalerts:=false;//  <----
Excel.Cells[Y,1].Value:=Edit1.Text;                    
Excel.ActiveWorkbook.SaveAs('d:\plik.csv');            
Excel.Quit;
end;
end.

Teraz nie wyskakuje okno z komunikatem czy zastapic plik. Tylko teraz jak zrobic zeby dopisywał do pliku zawartosc Edit i nie kasował wczesniejszych. z góry dzieki za pomoc.

Pozostało 580 znaków

2006-07-17 22:01

Rejestracja: 14 lat temu

Ostatnio: 6 lat temu

0

Możesz przeszukać w petli i sprawdzić czy komórka jest pusta. Jeżeli tak to wpisać wartość.

for i := 1 to ColCount do
 if Cells[i,1] = '' then Cells[i,1] := Edit1.Text;

gdzie:
ColCount to liczba wierszy (kolumn) (jak chcesz)


<span style="color: blue">"Kolarstwo to jedna z najtrudniejszych dyscyplin sportu. Nawet najgorszy kolarz jest wciąż wybitnym sportowcem."
s.p. Marco Pantani
</span>

Pozostało 580 znaków

2006-07-18 21:37

Rejestracja: 14 lat temu

Ostatnio: 3 lata temu

0

Teraz jest tak jak ma byc i gitara :-)

procedure TForm1.Button1Click(Sender: TObject);
begin
Y:=Y+1;
Z:=SpinEdit1.Value;
if SpinEdit1.Value < 1 then
Z:=SpinEdit1.Value+1;
if Y > 65535 then
Z:=SpinEdit1.Value + 1;
Excel:=CreateOleObject('Excel.Application');
Excel.Workbooks.Open('d:\plik.csv');
excel.DisplayAlerts:=false;
Excel.Cells[Y, Z].Value:=Edit1.Text;
Excel.ActiveWorkbook.SaveAs('d:\plik.csv');
Excel.Quit;
showmessage('excel off');
end;
end.

dzieki za podsuniecie pomyslu.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0