VBA Видалити весь рядок або стовпець

Цей підручник продемонструє різні способи видалення рядків і стовпців у Excel за допомогою VBA.

Видалити весь рядок або стовпець

Щоб видалити весь рядок у VBA, скористайтеся цим рядком коду:

1 Рядки (1). Видалити

Зверніть увагу, що ми використовуємо Видалити метод видалення рядка.

Замість посилання на Об'єкт рядків, Ви можете посилатися на рядки на основі їх Об'єкт діапазону з EntireRow:

1 Діапазон ("a1"). EntireRow.Delete

Аналогічно, щоб видалити весь стовпець, використовуйте ці рядки коду:

1 Стовпці (1). Видалити
1 Діапазон ("a1"). EntireColumn.Delete

Видалити кілька рядків або стовпців

За допомогою тієї ж логіки можна також видалити кілька рядків одночасно:

1 Ряди ("1: 3"). Видалити

або стовпці:

1 Стовпці ("A: C"). Видалити

Зверніть увагу, тут ми посилаємося на конкретні номери рядків та стовпців / букви, оточені цитатами.

Звичайно, ви також можете посилатися на EntireRow діапазону:

1 Діапазон ("a1: a10"). EntireRow.Delete

Примітка: Наведені нижче приклади демонструють лише видалення рядків, проте, як ви бачите вище, синтаксис практично ідентично видаляє стовпці.

Видалити порожні / порожні рядки

У цьому прикладі буде видалено рядок, якщо весь рядок порожній:

1234567891011 Sub DeleteRows_EntireRowBlank ()Яскрава клітина як діапазонДля кожної клітинки в діапазоні ("b2: b20")Якщо Application.WorksheetFunction.CountA (cell.EntireRow) = 0 Тодіcell.EntireRow.DeleteЗакінчити ЯкщоНаступна клітинаEnd Sub

Він використовує функцію робочого аркуша Excel: COUNTA.

Видалити рядок, якщо комірка порожня

Це видалить рядок, якщо певний стовпець у цьому рядку порожній (у цьому випадку стовпець B):

1 Діапазон ("b3: b20"). SpecialCells (xlCellTypeBlanks) .EntireRow.Delete

Видалити рядок на основі значення комірки

Це прокрутить діапазон і видалить рядки, якщо певне значення комірки в цьому рядку говорить "видалити".

1234567891011 Sub DeleteRowswithSpecificValue ()Яскрава клітинка як діапазонДля кожної клітинки в діапазоні ("b2: b20")Якщо cell.Value = "видалити" Тодіcell.EntireRow.DeleteЗакінчити ЯкщоНаступна клітинаEnd Sub

Додаткові приклади видалення рядків та стовпців

Видалити повторювані рядки

Цей код видалить усі повторювані рядки в діапазоні:

1 Діапазон ("b2: c100"). RemoveDuplicates Стовпці: = 2

Зверніть увагу, що ми встановили стовпці: = 2. Це повідомляє VBA перевіряти обидва перші два стовпці даних при розгляді дублікатів рядків. Дублікат виявляється лише тоді, коли обидва стовпці мають повторювані значення.

Якби ми встановили для цього значення 1, лише перший рядок перевіряли б на наявність повторюваних значень.

Видалити рядки таблиці

Цей код видалить другий рядок у таблиці, посилаючись на ListObjects.

1 ThisWorkbook.Sheets ("Sheet1"). ListObjects ("list1"). ListRows (2) .Delete

Видалити відфільтровані рядки

Щоб видалити лише рядки, видимі після фільтрації:

1 Діапазон ("b3: b20"). SpecialCells (xlCellTypeVisible) .EntireRow.Delete

Видалити рядки в діапазоні

Цей код видалить усі рядки в діапазоні:

1 Діапазон ("a1: a10"). EntireRow.Delete

Видалити вибрані рядки

Цей код видалить усі вибрані рядки:

1 Selection.EntireRow.Delete

Видалити останній рядок

Буде видалено останній використаний рядок у стовпці В:

1 Клітинки (рядки. Кількість, 2). Кінець (xlUp).

Змінивши 2 на 1, ви можете видалити останній використаний рядок у стовпці А тощо:

1 Клітинки (рядки. Кількість, 1). Кінець (xlUp).

Видалити стовпці за номером

Щоб видалити стовпець за його номером, використовуйте такий код:

1 Стовпці (2). Видалити

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave