Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/146: Рейтинг темы: голосов - 146, средняя оценка - 4.87
54 / 39 / 3
Регистрация: 25.01.2013
Сообщений: 368
1

Команды VBA к умной таблице

18.09.2015, 09:16. Показов 30236. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день,
Где можно посмотреть синтаксис команд обращения к умной таблице?
По сути мне необходимо проверить в ячейке на наличие формулы только в пределах умной таблицы

Видел только
Visual Basic
1
2
3
4
  With Лист1.ListObjects("Таблица1")
       .ListColumns.Count
       .ListColumns(индекс).Name
       .ListRows(индекс).Range(диапазон).NumberFormat
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.09.2015, 09:16
Ответы с готовыми решениями:

Задать имя "Умной таблице" через VBA
Приветствую! Имеется лист с множеством не больших "Умных таблиц", необходимо пройтись макросом...

Поиск последней заполненной строки в умной таблице
Добрый день! Ищу последние заполненные строки в двух умных таблицах одинаковым способом, но в одном...

Создать равный размер производным умной таблице
Добрый вечер форумчане! имеется на листе Таблица1, от не ссылками некоторые данные отражены в...

Как определить последнюю строку в умной таблице Excel
Добрый день. Работаю над решением такой задачи: Private Sub CommandButton2_Click() Dim iRow As...

5
47 / 47 / 6
Регистрация: 28.04.2015
Сообщений: 160
Записей в блоге: 4
18.09.2015, 09:34 2
Вообще, проверку наличия формулы в ячейке можно выполнить так:

Visual Basic
1
2
3
4
5
6
7
Sub Test3()  
    Dim rngI As Range  
    Set rngI = Range("A22")  
    If rngI.HasFormula Then  
        MsgBox rngI.Formula  
    End If  
End Sub
А затем можно работать с текстом формулы.
0
54 / 39 / 3
Регистрация: 25.01.2013
Сообщений: 368
18.09.2015, 09:55  [ТС] 3
Цитата Сообщение от Alex_Gur Посмотреть сообщение
If rngI.HasFormula Then
в принципе разобрался, но мне нужно диапазон умной таблицы без заголовок и итоговой строки, подскажите ?
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count = 1 Then    ' Изменения произошли в одной ячейке
      Stop
        If Not Intersect(Target, ListObjects("Таблица1").Range) Is Nothing Then    ' работаем с умной таблицей с именем Таблица1
            t = Target.Value
            If Target.HasFormula Then
             Stop
                '                Target.Clear
            End If
        End If
    End If
End Sub
0
15151 / 6424 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
18.09.2015, 10:08 4
Цитата Сообщение от Султанов Посмотреть сообщение
диапазон умной таблицы без заголовок и итоговой строки
.databodyrange

Добавлено через 3 минуты
Можете сохранить ссылку на наглядное описание диапазонов умной таблицы:
http://www.thespreadsheetguru.... cel-tables
2
54 / 39 / 3
Регистрация: 25.01.2013
Сообщений: 368
18.09.2015, 12:14  [ТС] 5
Казанский, не посоветуете как запретить вставку формул с дублированием по всему столбцу, в принципе умной таблицей было предусмотрено наоборот)), в общем мне нужна была реализация всего потенциала умной таблицы, кроме вставки формулы в диапазон данных таблицы

имеются 4 отчета, во всех применен формат умной таблицы, только первая является резиновой, к которой привязаны остальные три с запасом строк, в случае внесения построчно новых данных в первую форму, так вот пользователь чтобы не ставил формулы, мне это нужно блокировать
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    If Target.Count = 1 Then    ' Изменения произошли в одной ячейке
        If Not Intersect(Target, ListObjects("Таблица1").DataBodyRange) Is Nothing Then        ' работаем с умной таблицей с именем Таблица1
            If Target.HasFormula Then
                Target.ClearContents
            End If
        End If
    End If
    Application.EnableEvents = True
End Sub
К сожалению победа достигается только в рамках одной ячейки, в остальных умная таблица по столбцу дулирует


Можно было конечно пойти другим путем, но... много чего наделано)) переделывать времени нет
0
2 / 2 / 0
Регистрация: 19.08.2010
Сообщений: 70
19.10.2015, 13:53 6
Я вот так сделал:
Отмена автопротягивания формулы в "Умной таблице" макросом
0
19.10.2015, 13:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.10.2015, 13:53
Помогаю со студенческими работами здесь

Количество записей в умной таблице по фильтру
Создал умную таблицу, произвел выбор по фильтрам. Какая формула производит подсчет количества...

Разные заголовки в умной таблице сделать одинаковыми
Добрый день. Создал "умную таблицу" из имеющейся. На ней были повторяющиеся столбцы. А после...

Сортировка разных частей столбца в "умной таблице" Эксель
Доброй ночи! Проблема: в "умной таблице" записаны данные по 2м командам в виде список ФИО и...

Поиск максимального значения в стобце умной таблице, и генерация значения+1
Всем привет! Кто может подсказать, как писать код в VBA в таком случае. Имеется умная таблица....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru