Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2009, 08:12   #1
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию Явление Worda

Selection.Tables(1).PreferredWidthT ype = wdPreferredWidthPoints
Selection.Tables(1).PreferredWidth = CentimetersToPoints(17)
Selection.Tables(1).PreferredWidthT ype = wdPreferredWidthPercent

Вот 3 команды, следующие одна за другой в процедуре.
Первая строка указывает компьютеру, что таблица должна быть в см.
Вторая строка говорит компьютеру сделать ширину таблицы 17 см.
Треться строка говорит компьютеру, что таблица должна быть в %.

Но почему-то, применив этот код, ширина таблицы остается такой, какой и была, напирмер, 15 см, но ширина таблицы становится в %.

Если последнюю команду убрать, то ширина таблицы становится равной 17 см.

Что за явление такое? Ведь компьютер выполняет команды последовательно, одна за другой.

Если кому интересно, для чего такой код нужен, то объясню:

Надо, чтобы все таблицы в документе были одинаковой ширины. Сделать это с помощью процентов нельзя, т.к. в таблицах могут быть разные поля. Поэтому надо сначала им задать ширину в см, а потом перевести в %. Вы спросите, а зачем в%. Я вам отвечу, не тая, что если вдруг человек захочет изменить поля страницы в документе, чтобы таблицы были по ширине окна. Вот такие вот дела.

Последний раз редактировалось Busine2009; 26.05.2009 в 08:26.
Busine2009 вне форума Ответить с цитированием
Старый 26.05.2009, 08:27   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Ведь компьютер выполняет команды последовательно, одна за другой.
Видимо последняя команда переводит твои ранее заданные 17 в проценты и применяет это к таблице, отменяя wdPreferredWidthPoints
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.05.2009, 08:53   #3
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию

Я не верно указал.

Ширина таблицы меняется. То есть получается, все 3 команды работают, только почему-то перевод в % неправильный что ли.

Причем разные ситуации.
Busine2009 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц