VBA Изтриване на ред

В Excel, за да изтрием всеки ред, имаме пряк път за използване на CTRL + - или можем да изберете реда и щракнете с десния бутон върху него и да го изтрием. Но във VBA сме го направили, като написахме код за него. Методът за изтриване на ред във VBA първо трябва да идентифицираме кой ред да изтрием и след това можем да го изтрием. В тази статия ще научим за различни илюстрации за това как да изтриете ред в VBA.

В VBA, Изтриване на реда се използва за изтриване на набор от редове или един ред в зависимост от ситуациите. Подобно на работния лист на excel, можем да използваме макроси или VBA за изтриване на редовете в работен лист на excel. Това помага, когато много данни имат при нас и не можем да го направим ръчно.

Синтаксис за изтриване на ред в Excel VBA

Синтаксисът за изтриване на ред в excel е както е показано по-долу.

Worksheets.Rows (Ред #). Delete

Има и други методи за изтриване на редове с помощта на VBA, както следва.

Обхват ( "Cell"). EntireRow.Delete

Това, което по-горе ще направи, е, че ще изтрие реда за дадения ред. Например, ако напишем диапазон („A1“). EntireRow.Delete, тогава първият ред ще бъде изтрит, тъй като клетка A1 принадлежи на първия ред.

Също така, можем да използваме редове (row_num) .delete, за да изтрием ред.

Как да изтриете ред в Excel с помощта на VBA?

По-долу са примери за това как да изтриете ред в excel с помощта на VBA.

Можете да изтеглите този шаблон на VBA Delete Row Excel тук - VBA Delete Row Excel шаблон

VBA Delete Row - Пример №1

Нека да използвате първия прост метод за изтриване на редове. За демонстрационна цел ще въведа произволна стойност в клетка А1 и В1. Разгледайте го по-долу.

Това, което искам да видя е, ако използвам кода, написан над целия ред, ще бъде изтрит или една клетка ще бъде изтрита.

Забележка: За да използвате Excel VBA, трябва да имаме активиран раздел за програмисти от раздела Files в секцията с опции.

Следвайте стъпките по-долу, за да изтриете ред в excel с помощта на VBA.

Стъпка 1: Отидете в раздела Tab на програмиста, щракнете върху Visual Basic, за да отворите VBA Editor.

Стъпка 2: В кодовия сегмент декларирайте подфункция, за да започнете да пишете кода.

Код:

 Sub Sample () Край Sub 

Стъпка 3: Сега напишете следния код, за да изтриете реда.

Код:

 Диапазон на субпроба () ("А1"). ЦялаRow.Delete End Sub 

Стъпка 4: Стартирайте този код, като натиснете F5 или Run бутона и вижте изхода.

След като стартираме кода, можем да видим, че стойностите и от клетка A1 и B1 са премахнати, тъй като целият първи ред е изтрит.

VBA Delete Row - Пример №2

По-рано в първия пример изтрих само един ред. Но какво да кажем, ако трябва да изтрием няколко реда. За демонстрационна цел имам следните данни, както са показани по-долу,

Искам да изтрия всички първи пет реда. Следвайте стъпките по-долу, за да изтриете ред в excel с помощта на VBA.

Стъпка 1: В раздела на програмиста щракнете върху Visual Basic, за да отворите VBA Editor.

Стъпка 2: В кода декларирайте подфункция, за да започнете да пишете кода,

Код:

 Sub Sample1 () Край Sub 

Стъпка 3: Напишете следния код, показан по-долу, за да изтриете всичките пет реда.

Код:

 Sub Sample1 () Обхват ("A1: B5"). EntireRow.Delete End Sub 

Стъпка 4: Стартирайте този код, като натиснете F5 или Run бутона и вижте изхода.

След като стартираме кода виждаме следния резултат, Цялата информация е изтрита означава, че първите пет реда са били изтрити, както имахме данни в първите пет реда.

Забележка: Ще вмъкна обратно данните в примерния лист на excel за демонстрация.

VBA Delete Row - Пример №3

Сега имаме данни за служителите и продажбите им се извършват за три месеца януари, февруари и март. Един от служителите беше в отпуск и не можеше да прави продажби в продължение на три месеца, така че килиите да са празни за него. Нашата цел е да намерим този празен ред и да го изтрием от данните.

Вижте данните по-долу,

Следвайте стъпките по-долу, за да изтриете ред в excel с помощта на VBA.

Стъпка 1: От раздела на програмиста щракнете върху Visual Basic, за да отворите визуален основен редактор.

Стъпка 2: Декларирайте подфункцията в прозореца с код, за да започнете да пишете кода,

Код:

 Sub Sample2 () Край Sub 

Стъпка 3: Напишете следния код, за да изтриете редовете, които имат празни клетки.

Код:

 Диапазон на подменю2 () ("A1: D5"). SpecialCells (xlCellTypeBlanks) .EntireRow.Delete End Sub 

SpecialCells е функция в VBA, която ни връща всички клетки, които съответстват на нашите условия, а нашето състояние беше празните клетки в този диапазон, така че използвахме xlCellTypeBlanks функция.

Стъпка 4: Стартирайте този код, като натиснете F5 или Run бутона и вижте изхода.

След като стартираме кода, можем да видим, че редът с празните клетки е изтрит.

Забележка: Ще вмъкна отново данните в примерния лист за excel за демонстрация.

VBA Delete Row - Пример №4

Има някои други подобни методи за изтриване на редовете, като например използването на редовете и функцията за изтриване. Например имаме данни в ред 4 и искам да изтрия ред 4. Можем да дадем команда на excel да изтрием 4 -ти ред в данните. Вижте екрана по-долу. Имам произволни данни на ред 4 в първата клетка.

Следвайте стъпките по-долу, за да изтриете ред в excel с помощта на VBA.

Стъпка 1: Отворете редактора на VBA, като кликнете върху Visual Basic от раздела на програмиста,

Стъпка 2: Декларирайте подфункцията, за да започнете да пишете кода.

Код:

 Sub Sample3 () Край Sub 

Стъпка 3: Напишете следния код, за да изтриете четвъртия ред.

Код:

 Sub Sample3 () Редове (4) .Delete End Sub 

Стъпка 4: Стартирайте този код, като натиснете F5 или Run бутона и вижте изхода.

Данните са изтрити, тъй като четвъртият ред е изтрит сам.

VBA Delete Row - Пример №5

В горния код сме дали диапазона или реда за изтриване в самия код. Сега нека вземем информация от потребителя и той може да изтрие реда от дадени данни. Например, имам данни за служителите и продажбите са направени както по-долу и искам потребителят да избере диапазона от това колко данни потребителят иска да изтрие редовете с празни клетки. Погледнете по-долу данните,

Следвайте стъпките по-долу, за да изтриете ред в excel с помощта на VBA.

Стъпка 1: Отворете редактора на VB, като кликнете върху Visual Basic от раздела на програмиста,

Стъпка 2: Декларирайте подфункция, за да започнете да пишете кода.

Код:

 Sub Sample4 () Край Sub 

Стъпка 2: Декларирайте две променливи като диапазон, A и B.

Код:

 Sub Sample4 () Dim A As Range Dim B As Range End Sub 

Стъпка 3: За да вземем вход от потребителя за избор на диапазон за изтриване, ще използваме функция поле за въвеждане и ще запишем този вход в променлива, дефинирана по-горе.

Код:

 Sub Sample4 () Dim A As Range Dim B As Range Set A = Application.InputBox („Избор на данни“, „Sample Macro“, Тип: = 8) End Sub 

Стъпка 4: Задайте B = A, така че входът от потребителя да може да се съхранява в диапазон B.

Код:

 Sub Sample4 () Dim A като диапазон Dim B като диапазон Set A = Application.InputBox („Избор на данни“, „Sample Macro“, Тип: = 8) Задаване B = A End Sub 

Стъпка 5: Сега ще изтрием данните, които имат празни клетки от диапазона, избран от потребителя.

Код:

 Sub Sample4 () Dim A As Range Dim B As Range Set A = Application.InputBox („Избор на данни“, „Sample Macro“, Type: = 8) Set B = A A.SpecialCells (xlCellTypeBlanks) .EntireRow.Delete End Sub 

Стъпка 6: Сега стартирайте кода от предоставения бутон за стартиране.

Стъпка 6: Появява се поле за въвеждане.

Стъпка 7: Изберете диапазона от A1: D8 в този пример. Натиснете OK, за да видите резултата.

Данните, които имаха празни клетки, бяха изтрити.

Неща, които трябва да запомните

Има няколко неща, които трябва да запомним за Delete Row в Excel VBA:

  • Можем да изтрием реда въз основа на една клетка.
  • Можем да изтрием няколко реда, като даваме диапазон от клетки.
  • Можем също да изтрием редове, като вземаме входове от потребителя.

Препоръчителни статии

Това е ръководство за VBA Delete Row. Тук обсъдихме как да изтриете ред в Excel VBA, заедно с практически примери и шаблон за Excel за сваляне. Можете да разгледате и другите ни предложени статии -

  1. Как да използвате функцията за замяна в VBA?
  2. Пряк път за изтриване на редове в Excel
  3. Дело VBA | Трикове в Excel
  4. Пряк път за вмъкване на редове в Excel
  5. Как да сумираме няколко реда в Excel?

Категория: