Witam.
doSZEDŁem do dopisywania nowej lini, kożystając z kodu podanego przez Pana Watson
wygląda to tak:
begin{begin4}
nazwapliku:=ExtractFilePath(Application.ExeName)+''+nazwadoku+'.doc';
wordapplication1.Connect; //polaczenie z wordem
wordapplication1.Visible:=true; //otwiera sie okno worda
worddocument1.Connect;
worddocument1.ConnectTo(WordApplication1.Documents.Open(nazwapliku, EmptyParam, t, f, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, f)); //wczytanie dokumentu
WordApplication1.Selection.TypeText('dopisany nowy tekst'); //dopisana nowa linia
Worddocument1.PrintOutOld; //drukowanie
WordApplication1.quit;
WordApplication1.Disconnect;
worddocument1.Disconnect;
end;
Moje pytanie "jak przeskoczyć na koniec dokumentu i jak wstawić tabele" ?
Bo teraz dopisuje tekst na samym początku :/
(ps. nie edytuje postu bo nie pojawił by sie jako pierwszy ;) )
Pozdrawiam
Siemanko.
Udało mi się posklejać taki kodzik...
Mam kolejne pytanie, jak obejść komunikat przy zamykaniu dokumentu bo w tej chwili word pyta czy zapisać zmiany czy anulować....
I jeszcze jedno w tej chwili tabela tworzy mi się na początku dokumentu (przed tekstem który już istnieje w doku) jak mam więc wstawić tą tabele na koniec.
Podziękowanie dla Pana ?jozkan? za pomoc !!!
Pozdro
Uses ComObj;
var
WordApp,WordTable,Doc: OLEVariant;
nazwapliku: OleVariant;
t,f: OleVariant;
nrfaktury:integer;
data:string;
i, j: Integer;
begin
nazwapliku:=ExtractFilePath(Application.ExeName)+''+plik+'.doc';
WordApp := CreateOleObject('Word.Application');
WordApp.Visible:=true;
WordDocument1.ConnectTo(WordApplication1.Documents.Open(nazwapliku, EmptyParam, t, f, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, f)); //wczytanie dokumentu
// WordDocument1.Content.InsertAfter(#13);
WordTable :=WordDocument1.Tables.Add(WordApplication1.Selection.Range, 2, 2,EmptyParam,EmptyParam);
for i := 1 to 2 do
for j := 1 to 2 do
begin
if ((i=1) and (j=1)) then WordTable.Cell(i, j).Range.Text:='Imię :';
if ((i=1) and (j=2)) then WordTable.Cell(i, j).Range.Text:=zmienna_imie;
if ((i=2) and (j=1)) then WordTable.Cell(i, j).Range.Text:= 'Nazwisko :';
if ((i=2) and (j=2)) then WordTable.Cell(i, j).Range.Text:=zmienna_nazwisko;
end;
- worddocument1.PrintOutOld; *drukowanie
Sleep(1000);
WordApplication1.Quit;
WordApplication1.Disconnect;
worddocument1.Disconnect;
end;
Podpowiedzcie mi jak mam dodać tą tabelkę za istniejącym tekstem w doku bo już nic mi do pustej głowy nie przychodzi :/
pozdro