-
Все данные выводятся замещая другие как это исправить???
Код:
procedure TClav.N10Click(Sender: TObject);
var
i:integer;
k,b:OleVariant;
begin
WordApplication1.Visible:= true;
WordApplication1.Connect;
WordDocument1.Connect;
//================================================================================ ====
k:=23;
b:=0;
WordDocument1.Range(b).Text:='Отчет по подразделениям';
WordDocument1.Range(b).Select;
WordDocument1.Range.ParagraphFormat.LineSpacing:= 20;
WordDocument1.Range.Font.Size:=16;
WordDocument1.Range.ParagraphFormat.Alignment:=$00000001;
//================================================================================ ====
for i:=2 to ADOQuery1.RecordCount+1 do
begin
WordDocument1.Range(b).InsertBefore(ADOQuery1.FieldValues['podr']);
WordDocument1.Range(b).Select;
WordApplication1.Selection.Font.Size:=12;
WordApplication1.Selection.ParagraphFormat.Alignment:=$00000000;
WordApplication1.Selection.TypeParagraph;
WordDocument1.Range(b).InsertAfter(ADOQuery1.FieldValues['sot_familiya']+' '+ADOQuery1.FieldValues['sot_imya']+' '+ADOQuery1.FieldValues['sot_otchestvo']);
WordDocument1.Range(b).Select;
WordApplication1.Selection.Font.Size:=12;
WordApplication1.Selection.ParagraphFormat.Alignment:=$00000000;
ADOQuery1.Next;
end;
И можете объяснить свойство Range ели вам не сложно, а то я не до конца понимаю? -
makz (29.04.12 13:07) [1]Range(анг. -Диапазон) - ничего удивительного, что данные заменяются после
WordDocument1.Range(b).Select;
Если в word выделить текст и начать писать, то что произойдет? -
это я понимаю проста не понимаю как этим дипозом пользоватся.
-
makz (29.04.12 14:39) [3]
-
К примеру я пишу вот так:procedure TForm2.Button5Click(Sender: TObject);
var i,a:integer;
k,b:OleVariant;
begin
WordDocument1.Range.Text:='Заголовок';
WordDocument1.Range.Font.Size:=16;
k:=0;b:=9;
edit2.Text:=WordDocument1.Range(k,b).Text;
//===================================================================
k:=9;b:=9;{почему если я пишу тут 9 и 9 то выводется полностью название
подразделение, а ели например 9 и 10 то выводится 3 буквы от подразделения,
а если больше 9 и 11 то не работает? }
WordDocument1.Range(k,b).Text:=Table1.FieldValues['pod'];
WordDocument1.Range(k,b).Select;
W.Selection.TypeParagraph;
WordDocument1.Range(k,b).ParagraphFormat.LineSpacing:= 10;
//===================================================================
k:=15;b:=15;//
WordDocument1.Range(k,b).InsertAfter(Table1.FieldValues['sot_familiya']+' '
+Table1.FieldValues['sot_imya']+' '+Table1.FieldValues['sot_otchestvo']);
{И как мне вывести эту страку на следушей строке а не как она выводится трядом с подразделением}
W.Selection.TypeParagraph;
Table1.Next;
end;
end; -
Вобщем сделал так:procedure TForm2.Button5Click(Sender: TObject);
var i,a:integer;
k,b:OleVariant;
begin
WordDocument1.Range.ParagraphFormat.Alignment:=$00000001;
WordDocument1.Range.Font.Size:=16;
WordDocument1.Range.Text:='Отчет по подразделениям';
//===================================================================
While Table1.Eof=false do
begin
k:=23;b:=23;
WordDocument1.Range(k,b).ParagraphFormat.LineSpacing:= 20;
WordDocument1.Range(k,b).Text:=Table1.FieldValues['pod'];
WordDocument1.Range(k,b).Select;
WordDocument1.Range(k,b).Font.Size:=14;
WordDocument1.Range(k,b).ParagraphFormat.Alignment:=$00000000;
//w.Selection.Font.Size :=14;
W.Selection.TypeParagraph;
//w.Selection.ParagraphFormat.Alignment:= $00000000;
W.Selection.ParagraphFormat.LineSpacing:= 10;
//===================================================================
k:=29;b:=29;
WordDocument1.Range(k,b).Text:=Table1.FieldValues['sot_familiya']+
' '+Table1.FieldValues['sot_imya']+' '+Table1.FieldValues['sot_otchestvo'];
WordDocument1.Range(k,b).Select;
w.Selection.Font.Size :=12;
W.Selection.TypeParagraph;
W.Selection.ParagraphFormat.FirstLineIndent:=10;
w.Selection.ParagraphFormat.Alignment:= $00000000;
Table1.Next;
end;
end;
Теперь шрифт прыгает как это исправить??? -
Anatoly Podgoretsky © (29.04.12 19:49) [6]> kulinar (29.04.2012 18:01:05) [5]
А как прыгает?
Слева направо или вверх вниз? -
сверху с низу
-
а зачем ты его (шрифт/да и текст) меняешь постоянно... в цикле. одно и то же, по тому же месту. естественно "прыгает", то побольше поставишь то поменьше.