powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Снова Word Automation
9 сообщений из 9, страница 1 из 1
Снова Word Automation
    #35564338
Фотография Валентин Н.Карелин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, запутался...
Код: plaintext
1.
2.
3.
oWord = CREATEOBJECT("Word.Application")
oWordDoc = oWord.Documents.Add
myRange = oWord.ActiveDocument.Range( 0 ,  0 )
oWord.Selection.Tables.Add(myRange,  4 ,  12 )
вставляет в Word-документ таблицу, НО в начале документа.

1) как вставить таблицу в текущую позицию (где находится курсор). Повидимому обращение должно быть не ActiveDocument... А какое?
2) как вывести текст (напр., "привет, мир" ) в строку 3, колонку 2?

Excel Automation не предлагать!
...
Рейтинг: 0 / 0
Снова Word Automation
    #35564347
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валентин Н.КарелинБлин, запутался...
Код: plaintext
1.
2.
3.
oWord = CREATEOBJECT("Word.Application")
oWordDoc = oWord.Documents.Add
myRange = oWord.ActiveDocument.Range( 0 ,  0 )
oWord.Selection.Tables.Add(myRange,  4 ,  12 )
вставляет в Word-документ таблицу, НО в начале документа.

1) как вставить таблицу в текущую позицию (где находится курсор). Повидимому обращение должно быть не ActiveDocument... А какое?
2) как вывести текст (напр., "привет, мир" ) в строку 3, колонку 2?

Excel Automation не предлагать!
1) set oTable=oWordDoc.Tables.Add(Selection.Range, 4, 12)
2) oTable.Cell(3,2)="Hello, World!"
...
Рейтинг: 0 / 0
Снова Word Automation
    #35564352
Фотография Валентин Н.Карелин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndreTMset oTable=oWordDoc.Tables.Add(Selection.Range, 4, 12)
что за конструкция? Если
Код: plaintext
oTable = oWordDoc.Tables.Add(Selection.Range,  4 ,  12 )
, то фокс ругается:
Alliace SELECTION not found
...
Рейтинг: 0 / 0
Снова Word Automation
    #35564366
Фотография HalK2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валентин Н.Карелин
1) как вставить таблицу в текущую позицию (где находится курсор). Повидимому обращение должно быть не ActiveDocument... А какое?
Вы ведь создаете пустой документ, конечно курсор будет вначале.

Валентин Н.Карелин
2) как вывести текст (напр., "привет, мир" ) в строку 3, колонку 2?
Создать макрос, и посмотреть методы и свойства применяемые для вставки значений в конкретные места в таблице
...
Рейтинг: 0 / 0
Снова Word Automation
    #35564370
Фотография Валентин Н.Карелин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошо,
oWord = CREATEOBJECT("Word.Application")
oWordDoc = oWord.Documents.Add
WITH oWord.Selection
.TypeText('гнпаукнгпафнга 11111111111111 222222222')
.TypeParagraph
ENDWITH
oWord.Visible = .T.

Как вставить таблицу после строки 'гнпаукнгпафнга 11111111111111 222222222' ???? Или в конец документа
...
Рейтинг: 0 / 0
Снова Word Automation
    #35564372
Фотография Валентин Н.Карелин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HalK2Создать макрос, и посмотреть методы и свойства применяемые для вставки значений в конкретные места в таблице

В макросрекордере ворд макрос пишет на бейсике. Пока я раскопал, как вставить таблицу в начало документа, а как в конец?
...
Рейтинг: 0 / 0
Снова Word Automation
    #35564375
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я же сообщил...

ActiveDocument.Tables.Add(ActiveDocument.Paragraphs.Last.Range, 4, 12) - в конец документа
...
Рейтинг: 0 / 0
Снова Word Automation
    #35564376
Фотография Валентин Н.Карелин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Та я и по асе и в форуме.
ActiveDocument.Tables.Add(ActiveDocument.Paragraphs.Last.Range, 4, 2)
вставляет к конец документа таблицу 4х2, теперь надо во второй столбик вставить текст
...
Рейтинг: 0 / 0
Снова Word Automation
    #35564407
Валентин Н.КарелинТа я и по асе и в форуме.
ActiveDocument.Tables.Add(ActiveDocument.Paragraphs.Last.Range, 4, 2)
вставляет к конец документа таблицу 4х2, теперь надо во второй столбик вставить текст
Алгоритм следующий:
1. В документе выбрать таблицу
2. В таблице обратиться к Columns, выбрать второй столбец. Результат лучше сделать отдельным объектом (Column) ...
3. В Column (столбце) обратиться к Cells (ячейкам) и выбрать ту ячейку, которая необходима. Либо перебрать их все в цикле...

А по поводу перевода макросов на VBA (хоть Word-VBA, хоть Excel-VBA) в программу на FoxPro была масса статей. На FoxClub точно есть, здесь - надо поискать... Вроде бы, эти статьи писал Владимир Максимов...
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Снова Word Automation
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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