Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.06;
Скачать: CL | DM;

Вниз

Работа с Word   Найти похожие ветки 

 
Александр1   (2005-01-15 10:01) [0]

Здравствуйте уважаемые мастера!
Ниже приведённый код якобы должен добавлять строку в таблицу word. Но он работает как-то не так. Он добавляет строки выше таблицы, а мне надо добавить в конце таблицы одну строку. Подскажите, как это можно сделать.
var  j: Integer;
     varcol: OleVariant;
...
j:=2;
varcol:=WordDocument1.Tables.Item(1).Columns.Item(j);
WordDocument1.Tables.Item(1).Columns.Add(varcol);

Заранее спасибо!


 
Александр1   (2005-01-15 11:53) [1]

Чё никто с word не умеет работать?


 
GanibalLector ©   (2005-01-15 12:53) [2]


var WordApp:Variant;
Doc1,WhereTable1End:OleVariant;
begin
  WordApp := CreateOleObject("Word.Application");
  WordApp.Documents.Open("C:\2.doc");
  wordapp.visible:=true;
  Doc1 := WordApp.ActiveDocument;
WhereTable1End:=WordApp.ActiveDocument.Tables.Item(1).Range.End;
Doc1.Tables.Item(1).Cell(WhereTable1End,3).Range.Text:="GanibalLector";
WhereTable1End:=UnAssigned;
Doc1:=UnAssigned;
WordApp:=UnAssigned;
end;


 
Александр1   (2005-01-15 18:02) [3]


> GanibalLector ©   (15.01.05 12:53) [2]

Спасибо большое, что откликнулся на мою просьбу!
Документ открывается! В нём в таблицу в 3-ю колонку записывается слово GanibalLector. Это всё конечно хорошо. Но он записывает слово в уже существующую последнюю сточку. А мне надо чтобы он ДОБАВЛЯЛ СТРОКУ В НИЗУ ТАБЛИЦЫ, а потом записывал туда, например, тоже самое слово.
Ещё почему-то при повторном нажатии на кнопку появляется сообщение, что документ якобы заблокирован пользователем.


 
YurikGL ©   (2005-01-15 18:12) [4]

try
WordApplication1.Connect;
WordApplication1.Visible:=true;
//открытие документа и т.д....
WordApplication1.ActiveDocument.Tables.Item(1).Rows.Add(EmptyParam);
finally
WordApplication1.Disconnect;
end;


 
GanibalLector ©   (2005-01-16 01:54) [5]

Согласен с YurikGL [4]

WordApp := CreateOleObject("Word.Application");
  WordApp.Documents.Open("C:\2.doc");
  wordapp.visible:=true;
  Doc1 := WordApp.ActiveDocument;
Doc1.Tables.Item(1).Rows.Add(EmptyParam);
WhereTable1End:=WordApp.ActiveDocument.Tables.Item(1).Range.End;
Doc1.Tables.Item(1).Cell(WhereTable1End,3).Range.Text:="GanibalLector";
WhereTable1End:=UnAssigned;
Doc1:=UnAssigned;
WordApp:=UnAssigned;


 
GanibalLector ©   (2005-01-16 01:58) [6]

>щё почему-то при повторном нажатии на кнопку появляется сообщение, что документ якобы заблокирован пользователем

Ну,да.Это ж я для примера его не закрываю,а тебе вывожу.Что бы не было сообщения закрой Word,а потом на кнопку жми.Или еще вариант,сохрани документ и закрой.

Выбирать тебе...Удачи!


 
GanibalLector ©   (2005-01-16 01:59) [7]

>Или еще вариант,сохрани документ и закрой.
Имеется ввиду программно.


 
olookin ©   (2005-01-16 04:45) [8]

Странно, а мне всегда казалось, что вместо

Doc1.Tables.Item(1).Rows.Add(EmptyParam);

надо

Doc1.Tables.Item[1].Rows.Add(EmptyParam);


 
Александр1   (2005-01-18 10:37) [9]

А как программно закрыть Word?


 
Александр1   (2005-01-18 10:40) [10]

WordDocument1.Save;
WordDocument1.Close;
Так чё-то не выходит. Ошибки не выдает, но и не сохраняет.


 
Александр1   (2005-01-21 06:27) [11]

Ну ладно большое спасибо всем за помощь. Всё-таки строчки добавляются в даблице как надо. Жалко что никак не получается сохранить word/


 
YurikGL ©   (2005-01-21 07:34) [12]


> Александр1   (21.01.05 06:27) [11]

Запиши макрос и посмотри, как он выглядит.


 
Александр1   (2005-01-21 21:17) [13]


>
> Запиши макрос и посмотри, как он выглядит.

А чё это такое если не сикрет и где его взять?


 
MacroDenS ©   (2005-01-21 21:51) [14]

Сервис-макрос-записать...-указываешь имя макроса-выполняешь операцию типа сохранить-жмешь кнопку остановить запись

Далее:
Сервис-макрос-макросы-выбираешь по имени макрос который записал-жмешь изменить-в редакторе смотришь код


 
GanibalLector ©   (2005-01-22 02:10) [15]

/WordDocument1.Save;
WordDocument1.Close;
Так чё-то не выходит. Ошибки не выдает, но и не сохраняет./

У меня все чудесно работает.Давай полный код,ща глянем...


 
GanibalLector ©   (2005-01-22 02:21) [16]

Кстати,а ты создаешь новый или открываешь существующий?Это многое меняет!


 
olookin ©   (2005-01-22 02:39) [17]

Может и левое будет, но такие вещи я кажется без посторонней помощи осваивал.. Чего и атору темы желаю...


 
GanibalLector ©   (2005-01-22 02:46) [18]

2 olookin ©   (22.01.05 02:39) [17]
Согласен.Хочу добавить,что на 80% своих вопросов ответы нахожу в поисковике ;)


 
olookin ©   (2005-01-22 02:53) [19]

[18] GanibalLector ©   (22.01.05 02:46)

Применительно к данному я на все вопросы 100% ответов находил в помощи по VB для стандартной комплектации Оффиса... Ищите да обрящете....


 
olookin ©   (2005-01-22 02:54) [20]

[18] GanibalLector ©   (22.01.05 02:46)

Т.е. про обрящете не Вам...



Страницы: 1 вся ветка

Текущий архив: 2005.02.06;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.029 c
14-1105682399
Hogo
2005-01-14 08:59
2005.02.06
транслировать из Harbour в Delphi


14-1106125811
uny
2005-01-19 12:10
2005.02.06
почему она спрашивает?


1-1106484823
Igor_thief
2005-01-23 15:53
2005.02.06
Снова про прорисовку ListView


3-1105071047
hawkins
2005-01-07 07:10
2005.02.06
когда следует использовать метод Query.Prepare?


1-1106685428
SergP
2005-01-25 23:37
2005.02.06
MDI и Меню