Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
mor_sergey
77 / 11 / 0
Регистрация: 28.03.2018
Сообщений: 570
1

Удаление выделенных строк из умной таблицы

11.07.2019, 10:19. Просмотров 882. Ответов 3
Метки нет (Все метки)

Ребят есть умная таблица с фамилиями (3 столбца)....человек тыкает на нужные (в любой столбец строки с CTRL) и запускает макрос удаления этих строк. все элементарно и все сделал...но не учел координаты. я создаю коллецию с выделенными людьми, а потом просто ищу такие строки в таблице и удаляю.все работает если я в 3 столбце выделяю. или может снизу вверх циклом удалить. непонятно тогда как условие с выделением написать


Visual Basic
1
2
3
4
5
6
7
8
9
 Dim DeleteList As New Collection
        For Each c In Selection
                DeleteList.Add CStr(c.Cells(1, -1))
                   Next
              End If
              For i = 1 To DeleteList.Count
              Set DeletedRows = ListObj.ListColumns.Item(1).Range.Find(DeleteList(i), lookat:=xlWhole)
            ListObj.Range.Rows(DeletedRows.Row).Delete Shift:=xlUp  ' удаление строк
    nexi i
Добавлено через 47 минут
решил таким способом.....некрасиво. может есть другой способ?

Visual Basic
1
2
3
4
5
6
7
8
9
Select Case c.Column
       
        Case 1
                DeleteList.Add CStr(c.Cells(1, 1))
        Case 2
                DeleteList.Add CStr(c.Cells(1, 0))
        Case 3
                DeleteList.Add CStr(c.Cells(1, -1))
                End Select
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2019, 10:19
Ответы с готовыми решениями:

Удаление строк из умной таблицы по условию
Добрый день, уважаемые форумчане. Имеется кусок кода, который удаляет строки по условию При этом...

Удаление строк из "умной таблицы" макросом
Здравствуйте, уважаемые Ассы VBA! Столкнулся с проблемой удаления строк из таблицы на листах с...

Удаление выделенных строк из ListBox
For I = 0 To ListBox1.ListCount - 1 If ListBox1.Selected(I) Then ...

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

Удаление не выделенных строк в ListBox (Поиск в ListBox)
Добрый день! Друзья, подскажите, пожалуйста, как внутри ListBox организовать поиск по записям...

3
Vlad999
3101 / 1900 / 600
Регистрация: 02.11.2012
Сообщений: 4,878
11.07.2019, 10:49 2
вариант
Visual Basic
1
Selection.Offset(,Choose(Selection.Column,1,0,-1))
удалять лучше все сразу или снизу вверх.
1
mor_sergey
77 / 11 / 0
Регистрация: 28.03.2018
Сообщений: 570
11.07.2019, 11:01  [ТС] 3
Vlad999, гениально..но не понял как пользоваться. спасибо
0
Vlad999
3101 / 1900 / 600
Регистрация: 02.11.2012
Сообщений: 4,878
11.07.2019, 11:21 4
Лучший ответ Сообщение было отмечено mor_sergey как решение

Решение

Цитата Сообщение от mor_sergey Посмотреть сообщение
как пользоваться.
Visual Basic
1
2
3
4
5
For Each c In Selection.Offset(,Choose(Selection.Column,1,0,-1))
                DeleteList.Add CStr(c.Value)
'или так (математика :))
For Each c In Selection.Offset(,2-Selection.Column)
                DeleteList.Add CStr(c.Value)
0
11.07.2019, 11:21
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.07.2019, 11:21

Из умной таблицы в текстбокс
Что я делаю не так Me.CBHumans.List = Array(EmployeesListObj.Range(2))

(excel_2010_VBA) Сортировка умной таблицы
Здравствуйте. Проблема заключается в том, что если указать конкретное имя таблицы, то сортировка...

Увеличение диапазона умной таблицы
Здравствуйте!!! Срочно нужна помощь!!! Я не силен в VBA, а мне необходимо сделать программный код....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru