Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Уничтожение параметра spacing для всех таблиц документа

Ответить
Настройки темы
VBA - [решено] Уничтожение параметра spacing для всех таблиц документа

Новый участник


Сообщения: 30
Благодарности: 0


Конфигурация

Профиль | Отправить PM | Цитировать


День добрый.

Так сложилось, что текст получен из html и все таблицы пришли с нулевым значением интервала между ячейками. На практике это приводит к появлению двойных границ каждой ячейки в таблице. Дабы этого избежать, параметр "Интервал между ячейками" можно отключить вручную. Однако... Таблиц то море.. А в макрос я могу записать только конкретное число большее либо равное нулю..
Есть ли возможность в VBA "снять галочку" с параметра spacing для каждой таблицы?
Пример кода приложу, дабы не быть голословным:
Код: Выделить весь код
Sub Tables()
'
'
'
Dim i As Integer
Dim Acount As Integer
Acount = ActiveDocument.Tables.count
For i = 1 To Acount
ActiveDocument.Tables(i).Spacing = 0 'приводит к появлению сдвоенных границ :(
Next
End Sub

Отправлено: 18:34, 25-10-2011

 

Новый участник


Сообщения: 30
Благодарности: 0

Профиль | Отправить PM | Цитировать


Попробовал на чистом документе -> Создал произвольную таблицу (по умолчанию параметр/галочка Интервалы между ячейками отключен) -> Запустил процесс создания макроса -> Сначала активировал интервалы, потом снял.
Автоматический код привожу ниже:
Код: Выделить весь код
Sub a_111()
'
'
'
    With Selection.Tables(1)
        .TopPadding = CentimetersToPoints(0)
        .BottomPadding = CentimetersToPoints(0)
        .LeftPadding = CentimetersToPoints(0.19)
        .RightPadding = CentimetersToPoints(0.19)
        .Spacing = CentimetersToPoints(0.04)
        .AllowPageBreaks = True
        .AllowAutoFit = True
    End With
    With Selection.Tables(1)
        .TopPadding = CentimetersToPoints(0)
        .BottomPadding = CentimetersToPoints(0)
        .LeftPadding = CentimetersToPoints(0.19)
        .RightPadding = CentimetersToPoints(0.19)
        .Spacing = 0
        .AllowPageBreaks = True
        .AllowAutoFit = True
    End With
End Sub
Как видно, единственным отличаем является параметр "Spacing". Однако при выставлении его в 0 = параметр не деактивируется, а выставляется в нулевое значение ==> сдвоенные границы, что визуально сильно "карявит" документ..

Отправлено: 11:50, 26-10-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Для стандартной ширины «.InsideLineWidth» и «.OutsideLineWidth» попробуйте так:
Код: Выделить весь код
Table.Spacing = -0.5
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:21, 26-10-2011 | #3


Новый участник


Сообщения: 30
Благодарности: 0

Профиль | Отправить PM | Цитировать


Уж не знаю, насколько это правильно, но визуально выглядит так, как нужно. Спасибо.

Отправлено: 15:15, 26-10-2011 | #4


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


defor6, самое интересное — попробуйте посмотреть, например, из окна отладки, какое теперь значение свойства «.Spacing» у таблицы .

Отправлено: 20:29, 26-10-2011 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Уничтожение параметра spacing для всех таблиц документа

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] Уничтожение панели подробностей!!! SHURA-IZMAIL Microsoft Windows 7 4 31-05-2011 00:05
Распечатка документа на всех принтерах в системе. sashadeg AutoIt 3 28-12-2010 15:50
Разное - [решено] /SQL/ Поиск значения в ячейках всех таблиц базы данных Oracle EvgeniyQQQ Программирование и базы данных 4 09-08-2010 19:46
Доступ - Уничтожение данных clin Microsoft Windows 2000/XP 7 31-10-2009 14:15
MySQL - [решено] Выборка данных со всех таблиц, которые начинаются с test_ Artem-Samsung Программирование и базы данных 2 31-03-2009 15:42




 
Переход