powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / добавление строки в таблицу Word из другого приложения
20 сообщений из 20, страница 1 из 1
добавление строки в таблицу Word из другого приложения
    #37278492
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день
запнулся на такой задаче и ни как не могу ее решить.
программно добавляю строку в таблице созданного из шаблона документа,
но ни как не реагирует на мои старания.
вроде все отрабатывает, данные вставляет и в таблицу тоже.
строку таблицы выделяет, а добавить не добавляет
вот пример из работы excel:
пробовал из excel,word,access - ни в какую :(


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Sub WAPP()
Dim app As Word.Application
Dim strDOT As String, x&
x= 5 
     strDOT = ThisWorkbook.Path & "\" & "WDOC.dot"
         Set app = New Word.Application
         app.Visible = True
         app.Documents.Add strDOT
       With app.ActiveDocument
         .Bookmarks("dt_start").Range.Text = "25"
         .Bookmarks("dt_fin").Range.Text = "54654"
         .Tables( 1 ).Rows( 1 ).Select
          Selection.InsertRowsBelow x
        End With
End Sub
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279153
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry,

Код: plaintext
1.
Set app = New Word.Application
app.Visible = True
сделали видимым, ОК, а где его открытие? и Вы не говорите ошибки или что, какие??
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279231
R Dmitry,
чем дальше, тем страннее... (с) Алиса
Строк в таблицу не добавляет, и ошибку не выдает ?

Можно попробовать уточнить чей объект используете:
Код: plaintext
app.Selection.InsertRowsBelow x
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279319
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюR Dmitry,

Код: plaintext
1.
Set app = New Word.Application
app.Visible = True
сделали видимым, ОК, а где его открытие? и Вы не говорите ошибки или что, какие??ЦЭ, опять сказывается Ваше активное незнание мат.части :-)

Код: plaintext
Set app = New Word.Application
Это и есть открытие. Это называется ранним связыванием. Работает быстрее позднего с применением CreateObject, но требует обязательного подключения соответствующей библиотеки. В данном случае Microsoft Word XX.0 Object Library

Дмитрий, лично я бы делал вообще без обращения к Selection, ибо это чревато всякими ошибками...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Sub WAPP()
    Dim app As Word.Application, objWrdDoc As Word.Document
    Dim strDOT As String, x&
    x =  5 
    strDOT = ThisWorkbook.Path & "\" & "WDOC.dot"
    Set app = New Word.Application
    app.Visible = True
    Set objWrdDoc = app.Documents.Add(strDOT)
    With objWrdDoc
        .Bookmarks("dt_start").Range.Text = "25"
        .Bookmarks("dt_fin").Range.Text = "54654"
        .Tables( 1 ).Rows( 1 ).InsertRowsBelow x
    End With
End Sub
Сразу оговорюсь - не проверял.
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279337
The_Prist,
авторСразу оговорюсь - не проверял. А чего тут проверять? В справке, ангельским по белому:
InsertRowsBelow Method
Applies To:
Selection Object

Правда, в той-же справке ни слова про наличие параметров у этого метода...
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279340
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем,

Я при работе с VBA понял одну вещь - почти все, что можно сделать с Selection можно сделать без него. Думаю тут тоже можно найти выход. А если нет - Вы уже указали Дмитрию на ошибку в коде.
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279354
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist, в ВБА все, что можно сделать с Selection можно сделать без него, это точно!!!!!
Выделять плохой тон
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279413
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю - Уважаемый, Вы сначала проверьте а потом утверждайте

Дмитрий, спасибо, к сожалению Word..... это жуть, и метод добавления строки не работает без выделения объекта, это я уже проверял :) первым делом.

Код: plaintext
app.Selection.InsertRowsBelow x
Отдельное спасибо за камень., без камня он точно не работает, с камнем и какой то м.....ю, заработало как надо.

да в excel все как то попроще :)
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279442
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry,

Да в Excel-е так же. Просто обращаясь к объектам другого приложения не надо забывать указывать, что это объекты именно другого приложения :-)

А без выделения можно так:
Код: plaintext
.Tables( 1 ).Rows( 1 ).Range.Rows.Add
Т.е. выглядеть будет так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Sub WAPP()
    Dim app As Word.Application, objWrdDoc As Word.Document
    Dim strDOT As String, x&, li As Long
    x =  5 
    strDOT = ThisWorkbook.Path & "\" & "WDOC.dot"
    Set app = New Word.Application
    Set objWrdDoc = app.Documents.Add(strDOT)
    With objWrdDoc
        .Bookmarks("dt_start").Range.Text = "25"
        .Bookmarks("dt_fin").Range.Text = "54654"
        For li =  1  To x
            .Tables( 1 ).Rows( 1 ).Range.Rows.Add
        Next li
    End With
End Sub

И не обязательно делать видимым Word и что-то выделять...
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279478
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, Дмитрий попробуем и так, но хотел без дополнительного цикла, как говорят "одним чохом" :)
Еще раз всем спасибо.
С уважением, Дмитрий.
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279481
The_Prist,
есть нюанс, даже не один.
Метод Add создает объект Row. При небольшом кол-ве добавляемых строк не ощущается, при большом может стать существенным.
Add и InsertRowsBelow копируют форматирование из разных строк, первый - из той, которая окажется под добавляемой, второй - из той, которая окажется над добавляемыми. Исключение - когда применяется метод Add последней строки таблицы.
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279656
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist,
И не обязательно делать видимым Word и что-то выделять...
+100
ОКЕЙНО
К автору соглашаетесь????
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279834
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюК автору соглашаетесь????
На что я должен согласиться ?
на то что метод InsertRowsBelow работает без Selection ?
добавлю, к словам Дмитрия
авторЦЭ, опять сказывается Ваше активное незнание мат.части :-)
читайте MSDN и никогда не утверждайте того, чего сами не знаете.

С уважением, Дмитрий.
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37279878
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнемThe_Prist,
есть нюанс, даже не один.
Метод Add создает объект Row. При небольшом кол-ве добавляемых строк не ощущается, при большом может стать существенным.
Add и InsertRowsBelow копируют форматирование из разных строк, первый - из той, которая окажется под добавляемой, второй - из той, которая окажется над добавляемыми. Исключение - когда применяется метод Add последней строки таблицы.Я и не спорю. Наше дело предложить. А уж решение за автором топика - ему виднее, для каких задач копировать строки и нужны ли там форматы с конкретно расположенных строк.
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37281300
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry,

приведите пример в ВБА того, что нельзя сделать без Selection
Выделять плохой тон
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37281409
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,
смотрите, 10706665
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37281412
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюR Dmitry,

приведите пример в ВБА того, что нельзя сделать без Selection
Выделять плохой тон
я сам терпеть не могу Select, но иногда и без него не обойдешся :(
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37281416
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry, а как решение от вчера, 22:17 не катит??
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37281456
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюR Dmitry, а как решение от вчера, 22:17 не катит??
В принципе если еще строк с пяток кода добавить, то возможно и решило бы, если бы вариантов не было :(.
Просто код приведен в простейшем варианте. На самом деле таблиц 14 шт. и строки добавляются и с верхним и нижним форматированием.... и еще много чего... :), поэтому мне нужен был именно этот метод.

С уважением, Дмитрий.
...
Рейтинг: 0 / 0
добавление строки в таблицу Word из другого приложения
    #37281462
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
R Dmitry, это называется одно лечим другое калечим
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / добавление строки в таблицу Word из другого приложения
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]