powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / VBA (Word) Выделена ли таблица ?
10 сообщений из 10, страница 1 из 1
VBA (Word) Выделена ли таблица ?
    #39267838
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
Есть 2 макроса. Один из них я запускаю если выделен текст вне таблицы другой если выделена таблица. Часто происходит путаница ...
если табл
Код: vbnet
1.
2.
3.
4.
5.
6.
Public Sub Ðîäèòåëüíûé_Ñòîëáåö_ÔÈÎ()
Dim cll As Cell
For Each cll In Selection.Cells
  cll.Range = MakePadeg(cll.Range, 2)
Next
End Sub


если вне таблицы
Код: vbnet
1.
2.
3.
Public Sub Âèíèòåëüíûé_ÔÈÎ()
  Selection.TypeText (MakePadeg(Selection, 4))
End Sub


Вопрос: как определить что выделен столбец таблицы или вся таблица ?
Спасибо ...
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39267868
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексашаесли выделен текст вне таблицыАлексашаесли выделена таблицаАлексашавыделен столбец таблицыАлексашався таблица
Так все-таки - какую ситуацию от какой нужно отделить? И что делать, если таблица состоит из одного столбца и он выделен?
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39267887
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если выделение захватывает и plain text, и часть (или всю) таблицы?
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39267896
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну а вообще у объекта Selection есть свойство Tables и свойство Paragraphs (и ещё хренова гора свойств). И у каждого из них есть свойство Count.
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39267904
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо за отклик.
1) выделение в таблице (столбец целиком или нет вся таблица или нет - не важно ) тогда в цикле обрабатывается все ячейки выделенной таблицы
2) выделен текст вне таблицы
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39267916
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К какому пункту отнести ситуации
а) в выделении присутствует частично обычный текст, частично таблица
б) выделение захватывает несколько таблиц
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39267967
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Вы скорее правы, но мне помогло Selection.Tables если больше 0 значит табл иначе вне таблицы и перебор в цикле для того чтобы поменят падеж не нужен. Пока и так радует :)
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39268109
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексашамне помогло Selection.Tables если больше 0 значит табл иначе вне таблицы
Ну это до поры... я бы предложил таки делать корректно, что-то типа:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
set sel = selection
for each tab in sel.tables
    call fn_tab(tab)
next
for each par in sel.paragraphs
    if par.range.tables.count = 0 then
        call fn_txt(par)
    end if
next
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39268111
Фотография Сын вождя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексаша...мне помогло Selection.Tables...
Поместите курсор сразу под таблицей и получите Selection.Tables.Count = 1

Вам подойдет свойство Selection.Information(wdWithInTable), которое однозначно указывает, что выбраноя область внутри одной таблицы.
...
Рейтинг: 0 / 0
VBA (Word) Выделена ли таблица ?
    #39272415
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сын вождя,

Спасибо! То что нужно.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / VBA (Word) Выделена ли таблица ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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