Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Получение данных из умной таблицы - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Получение данных из умной таблицы (Макросы/Sub)
Получение данных из умной таблицы
AVI Дата: Четверг, 29.08.2019, 03:57 | Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 523
Репутация: 17 ±
Замечаний: 0% ±

Excel 2016
Добрый день!
Подскажите, пожалуйста, как выбрать данные из умной таблицы в прилагаемом файле.
Желтым выделена ячейка с условием.
Серым выделен требуемый результат.
Сложность для меня в том, как заставить код выбрать не все столбцы из УТ, а только требуемые.
К сообщению приложен файл: 0773249.xlsm (16.3 Kb)
 
Ответить
СообщениеДобрый день!
Подскажите, пожалуйста, как выбрать данные из умной таблицы в прилагаемом файле.
Желтым выделена ячейка с условием.
Серым выделен требуемый результат.
Сложность для меня в том, как заставить код выбрать не все столбцы из УТ, а только требуемые.

Автор - AVI
Дата добавления - 29.08.2019 в 03:57
Pelena Дата: Четверг, 29.08.2019, 06:53 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19162
Репутация: 4412 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
[vba]
Код
    With ActiveSheet
        .ListObjects("Продажи").Range.AutoFilter Field:=3, Criteria1:=.Range("K1").Value
        Intersect(.ListObjects("Продажи").Range, .Range("E:E,H:I")).Copy Range("O2")
        .ListObjects("Продажи").Range.AutoFilter Field:=3
    End With
[/vba]


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
[vba]
Код
    With ActiveSheet
        .ListObjects("Продажи").Range.AutoFilter Field:=3, Criteria1:=.Range("K1").Value
        Intersect(.ListObjects("Продажи").Range, .Range("E:E,H:I")).Copy Range("O2")
        .ListObjects("Продажи").Range.AutoFilter Field:=3
    End With
[/vba]

Автор - Pelena
Дата добавления - 29.08.2019 в 06:53
AVI Дата: Четверг, 29.08.2019, 07:55 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 523
Репутация: 17 ±
Замечаний: 0% ±

Excel 2016
Pelena, Спасибо
[vba]
Код
.Range("E:E,H:I")).Copy
[/vba] - это столбцы в книге копирует, а
[vba]
Код
.Range("Продажи[Продавец], Продажи[[Количество]:[Стоимость]]"))
[/vba] не захватывает заголовки
 
Ответить
СообщениеPelena, Спасибо
[vba]
Код
.Range("E:E,H:I")).Copy
[/vba] - это столбцы в книге копирует, а
[vba]
Код
.Range("Продажи[Продавец], Продажи[[Количество]:[Стоимость]]"))
[/vba] не захватывает заголовки

Автор - AVI
Дата добавления - 29.08.2019 в 07:55
Pelena Дата: Четверг, 29.08.2019, 08:23 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 19162
Репутация: 4412 ±
Замечаний: ±

Excel 365 & Mac Excel
.Range("E:E,H:I")).Copy

Вы вырвали из контекста
Функция Intersect означает пересечение таблицы "Продажи" и столбцов "E:E,H:I"


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщение
.Range("E:E,H:I")).Copy

Вы вырвали из контекста
Функция Intersect означает пересечение таблицы "Продажи" и столбцов "E:E,H:I"

Автор - Pelena
Дата добавления - 29.08.2019 в 08:23
AVI Дата: Четверг, 29.08.2019, 09:47 | Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 523
Репутация: 17 ±
Замечаний: 0% ±

Excel 2016
Pelena, Не силен в функция, но получается, что если я добавлю столбец в УТ то и на выходе код захватит не те столбцы, поэтому я и завязываю все на названии столбцов в УТ. Но я вроде решил)

Но тут вопрос еще по той же таблице
[vba]
Код
.Range("Продажи[Продавец], Продажи[[Количество]:[Стоимость]]"))
[/vba]
Вот ссылаемся на столбцы, но у меня каждый месяц будут разные таблицы, например: Продажи_август_2019, Продажи_сентябрь_2019.
Название таблицы у меня загнано в переменную
[vba]
Код
Diap = Worksheets("Протокол").Range("E1")
[/vba]
Можно сделать так, что в ссылках на столбцы у меня в названии УТ отражалась эта переменная?
 
Ответить
СообщениеPelena, Не силен в функция, но получается, что если я добавлю столбец в УТ то и на выходе код захватит не те столбцы, поэтому я и завязываю все на названии столбцов в УТ. Но я вроде решил)

Но тут вопрос еще по той же таблице
[vba]
Код
.Range("Продажи[Продавец], Продажи[[Количество]:[Стоимость]]"))
[/vba]
Вот ссылаемся на столбцы, но у меня каждый месяц будут разные таблицы, например: Продажи_август_2019, Продажи_сентябрь_2019.
Название таблицы у меня загнано в переменную
[vba]
Код
Diap = Worksheets("Протокол").Range("E1")
[/vba]
Можно сделать так, что в ссылках на столбцы у меня в названии УТ отражалась эта переменная?

Автор - AVI
Дата добавления - 29.08.2019 в 09:47
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Получение данных из умной таблицы (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!