powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как программно из FoxPro сделать таблицу в MS Word невидимой
2 сообщений из 2, страница 1 из 1
Как программно из FoxPro сделать таблицу в MS Word невидимой
    #33129517
demux
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем здравствуйте. Помогите пожалуйста. Вот код из FoxPro 6.0 создающий в Word'е таблицу. Вопрос как сделать эту таблицу невидимой, т.е. чтобы она не печаталась (в Word'е это делается через "Нарисовать таблицу", "Внешние границы", "Удалить границы"). Если записать макрос, то получится нечто вроде

Selection.Borders(wdBorderRight).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderBottom).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderTop).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderHorizontal).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderLeft).LineStyle = wdLineStyleNone
Как этот макрос подкорректировать для того, чтобы FoxPro его обработал и таблица стала невидимой, но существовала.


#INCLUDE msword.h
#DEFINE True .T.
#DEFINE False .F.

LOCAL loWord, loTable, lnRow, lnColumn
loWord = GetCOMInstance("Word.Application")
loWord.Visible = .T.
WITH loWord
.Documents.Add("Normal", False)
.ActiveDocument.Tables.Add(.Selection.Range, 6, 2, wdWord9TableBehavior, wdAutoFitFixed)
loTable = .ActiveDocument.Tables(1)
WITH .Selection
.MoveRight(wdCharacter, 2, wdExtend)
.Cells.Merge()
.MoveDown(wdLine, 1)
.MoveRight(wdCharacter, 2, wdExtend)
.Cells.Merge()
.MoveDown(wdLine, 2)
.MoveRight(wdCharacter, 2, wdExtend)
.Cells.Merge()
.MoveDown(wdLine, 1)
.MoveRight(wdCharacter, 2, wdExtend)
.Cells.Merge()
ENDWITH
ENDWITH
...
Рейтинг: 0 / 0
Как программно из FoxPro сделать таблицу в MS Word невидимой
    #33129993
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, так прямо и переводить. Под Selection надо понимать собственно твою таблицу:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
#DEFINE wdWord9TableBehavior  1 
#DEFINE wdAutoFitFixed  0 
#DEFINE wdBorderRight - 4 
#DEFINE wdBorderBottom - 3 
#DEFINE wdBorderTop - 1 
#DEFINE wdBorderHorizontal - 5 
#DEFINE wdBorderLeft - 2 
#DEFINE wdBorderVertical - 6 
#DEFINE wdLineStyleNone  0 

LOCAL loWord, loDoc, loTable
loWord 	= CreateObject("Word.Application")
loWord.Visible = .T.
loDoc 	= loWord.Documents.Add()
loTable = loDoc.Tables.Add(loDoc.Range(),  6 ,  2 , wdWord9TableBehavior, wdAutoFitFixed)

loTable.Borders(wdBorderRight).LineStyle 	= wdLineStyleNone
loTable.Borders(wdBorderBottom).LineStyle 	= wdLineStyleNone
loTable.Borders(wdBorderTop).LineStyle 		= wdLineStyleNone
loTable.Borders(wdBorderHorizontal).LineStyle = wdLineStyleNone
loTable.Borders(wdBorderLeft).LineStyle 	= wdLineStyleNone
loTable.Borders(wdBorderVertical).LineStyle 	= wdLineStyleNone
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как программно из FoxPro сделать таблицу в MS Word невидимой
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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