Note: The other languages of the website are Google-translated. Back to English

Як автоматично вставити рядок на основі значення комірки в Excel?

doc-insert-row-based-on-value-1
Припустимо, у вас є діапазон даних, і ви хочете автоматично вставити порожні рядки вище або нижче певного значення в Excel, наприклад, автоматично вставити рядки нижче нульового значення, як показано на знімку екрана. В Excel немає прямого способу вирішити це завдання, але я можу ввести макрокод для автоматичного вставлення рядків на основі певного значення в Excel.
Вставте рядок нижче на основі значення комірки з VBA

Вставте рядок вище на основі значення комірки за допомогою Kutools для Excel гарна ідея3

Щоб вставити рядок на основі значення комірки, запустивши VBA, виконайте кроки нижче:

1. прес Alt + F11 одночасно клавіші та a Microsoft Visual Basic для додатків вискакує вікно.

2. клацання Insert > Модулі, потім вставте нижче код VBA до спливаючого вікна Модулі вікна.

VBA: Вставте рядок нижче на основі значення комірки.

Sub BlankLine()
	'Updateby20150203
	Dim Rng As Range
	Dim WorkRng As Range
	On Error Resume Next
	xTitleId                   = "KutoolsforExcel"
	Set WorkRng                = Application.Selection
	Set WorkRng                = Application.InputBox("Range", xTitleId, WorkRng.Address, Type: = 8)
	Set WorkRng                = WorkRng.Columns(1)
	xLastRow                   = WorkRng.Rows.Count
	Application.ScreenUpdating = False
	For xRowIndex = xLastRow To 1 Step - 1
		Set Rng                   = WorkRng.Range("A" & xRowIndex)
		If Rng.Value = "0" Then
			Rng.Offset(1, 0).EntireRow.Insert Shift: = xlDown
		End If
	Next
	Application.ScreenUpdating = True
End Sub

3. клацання F5 клавішу або прогін , вискакує діалогове вікно і виберіть стовпець, що містить нуль. Дивіться знімок екрана:
doc-insert-row-based-on-value-2

4. клацання OK. Тоді порожні рядки будуть вставлені нижче нульового значення.
doc-insert-row-based-on-value-3

Чайові:

1. Якщо ви хочете вставити рядки на основі іншого значення, ви можете змінити 0 до будь-якого значення, яке ви хочете в VBA: Якщо Rng.Value = "0" Тоді.

2. Якщо ви хочете вставити рядки вище нуля чи іншого значення, ви можете скористатися наведеним нижче кодом vba.

VBA: Вставити рядок вище нульового значення:

Sub BlankLine()
	'Updateby20150203
	Dim Rng As Range
	Dim WorkRng As Range
	On Error Resume Next
	xTitleId                   = "KutoolsforExcel"
	Set WorkRng                = Application.Selection
	Set WorkRng                = Application.InputBox("Range", xTitleId, WorkRng.Address, Type: = 8)
	Set WorkRng                = WorkRng.Columns(1)
	xLastRow                   = WorkRng.Rows.Count
	Application.ScreenUpdating = False
	For xRowIndex = xLastRow To 1 Step - 1
		Set Rng                   = WorkRng.Range("A" & xRowIndex)
		If Rng.Value = "0" Then
			Rng.EntireRow.Insert Shift: = xlDown
		End If
	Next
	Application.ScreenUpdating = True
End Sub

doc-insert-row-based-on-value-4


Якщо ви не знайомі з VBA, можете спробувати Kutools для Excel's Виберіть певні клітини , а потім вставте рядки вгорі.

Kutools для Excel, з більш ніж 300 зручні функції, полегшує вам роботу. 

після установки Kutools для Excel, будь-ласка, виконайте наведені нижче дії:(Безкоштовно завантажте Kutools для Excel зараз!)

1. Виберіть список, з якого ви хочете дізнатись конкретні комірки, та натисніть Кутулс > вибрати > Виберіть певні клітини. Дивіться знімок екрана:
doc вставити рядок на основі значення 9

2. У діалоговому вікні, що з’являється, поставте галочку Весь ряд , а потім перейдіть до виберіть Так само від Конкретний тип , а потім введіть значення, яке потрібно знайти, у правому текстовому полі. Дивіться знімок екрана:
doc вставити рядок на основі значення 6

3. клацання Ok, і з’явиться діалогове вікно, щоб нагадати вам кількість вибраних рядків, просто закрийте його.

4. Наведіть курсор на один вибраний рядок і клацніть правою кнопкою миші, щоб вибрати Insert з контекстного меню. Дивіться знімок екрана:
doc вставити рядок на основі значення 7

Тепер рядки вставляються вище на основі певного значення.
doc вставити рядок на основі значення 8


Відносні статті:


Найкращі інструменти для підвищення продуктивності офісу

Kutools для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%

  • Повторне використання: Швидко вставте складні формули, діаграми і все, що ви використовували раніше; Шифрувати комірки з паролем; Створити список розсилки та надсилати електронні листи ...
  • Супер формула бар (легко редагувати кілька рядків тексту та формули); Макет читання (легко читати та редагувати велику кількість комірок); Вставте у відфільтрований діапазон...
  • Об’єднати клітинки / рядки / стовпці без втрати даних; Вміст розділених комірок; Об'єднати повторювані рядки / стовпці... Запобігання дублюючим клітинам; Порівняйте діапазони...
  • Виберіть Повторюваний або Унікальний Рядки; Виберіть Пусті рядки (усі клітинки порожні); Супер знахідка та нечітка знахідка у багатьох робочих зошитах; Випадковий вибір ...
  • Точна копія Кілька клітинок без зміни посилання на формулу; Автоматичне створення посилань на кілька аркушів; Вставте кулі, Прапорці та інше ...
  • Витяг тексту, Додати текст, Видалити за позицією, Видаліть пробіл; Створення та друк проміжних підсумків підкачки; Перетворення вмісту комірок та коментарів...
  • Супер фільтр (зберегти та застосувати схеми фільтрів до інших аркушів); Розширене сортування за місяцем / тижнем / днем, частотою та іншим; Спеціальний фільтр жирним, курсивом ...
  • Поєднайте робочі зошити та робочі аркуші; Об’єднати таблиці на основі ключових стовпців; Розділіть дані на кілька аркушів; Пакетне перетворення xls, xlsx та PDF...
  • Понад 300 потужних функцій. Підтримує Office / Excel 2007-2021 і 365. Підтримує всі мови. Легке розгортання на вашому підприємстві чи в організації. 30-денна безкоштовна пробна версія повних функцій. 60-денна гарантія повернення грошей.
вкладка kte 201905

Вкладка Office забезпечує інтерфейс з вкладками для Office і значно спрощує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Коментарі (43)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
Я хочу вставити певний вміст під клітинку нижче. Як це зробити? Замість пустого рядка я хочу вставити значення в кілька стовпців.
Цей коментар був мінімізований модератором на сайті
Привіт, я хочу вставити кілька рядків на основі значення Наприклад: я хочу вставити 1 порожній рядок під комірку зі значенням 2, 2 рядки під коміркою зі значенням 3, 3 рядки під коміркою зі значенням 4 і так далі Чи можете ви будь ласка, допоможіть мені з цим?
Цей коментар був мінімізований модератором на сайті
Ви коли-небудь отримували відповідь на це? Я намагаюся зробити те ж саме.

Створіть список співробітників, які отримують # тижнів відпустки. Я хочу вставити рядок для кожного тижня. Це буде 1, 2 або 3 рядки в залежності від того, скільки часу вони заробили. #s 1 2 3 вже є в моїй електронній таблиці.
Цей коментар був мінімізований модератором на сайті
Я хочу вставити рядки на основі кількості, використовуючи значення комірки в одній електронній таблиці та вставляючи рядки в іншу електронну таблицю.
Цей коментар був мінімізований модератором на сайті
Завдяки вашому повідомленню. Але чи можете ви описати своє запитання більш детально? Які рядки ви хочете вставити? Порожній? І куди ви хочете вставити на аркуші? Якщо можете, дайте мені скріншот. Дякую.
Цей коментар був мінімізований модератором на сайті
Я тебе люблю. Дякую.
Цей коментар був мінімізований модератором на сайті
Це було дивно!!. Дякую, чоловіче.
Цей коментар був мінімізований модератором на сайті
Як я можу вставити більше одного рядка?
Цей коментар був мінімізований модератором на сайті
Ви можете спробувати цей VBA

Sub BlankLine()
'Оновлення до 20150203
Dim Rng як дальність
Dim WorkRng як діапазон
Dim xInsertNum As Long
' При помилці Відновити далі
xTitleId = "Kutools для Excel"
Встановіть WorkRng = Application.Selection
Встановіть WorkRng = Application.InputBox("Діапазон", xTitleId, WorkRng.Address, Тип:=8)
Якщо WorkRng — нічого, вийдіть із Sub
xInsertNum = Application.InputBox("Кількість порожніх рядків, які потрібно вставити", xTitleId, Тип:=1)
Якщо xInsertNum = False Тоді
MsgBox " Кількість порожніх рядків, які потрібно вставити ", vbInformation, xTitleId
Exit Sub
End If
Встановити WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = Невірний
Для xRowIndex = xLastRow до 1 кроку -1
Встановити Rng = WorkRng.Range("A" & xRowIndex)
Якщо Rng.Value = "0" Тоді
Rng.Resize(xInsertNum).EntireRow.Insert Shift:=xlDown
End If
Далі
Application.ScreenUpdating = True
End Sub
Цей коментар був мінімізований модератором на сайті
якщо ви хочете вставити порожні рядки нижче, спробуйте це

Sub BlankLine()
'Оновлення до 20150203
Dim Rng як дальність
Dim WorkRng як діапазон
Dim xInsertNum As Long
' При помилці Відновити далі
xTitleId = "Kutools для Excel"
Встановіть WorkRng = Application.Selection
Встановіть WorkRng = Application.InputBox("Діапазон", xTitleId, WorkRng.Address, Тип:=8)
Якщо WorkRng — нічого, вийдіть із Sub
xInsertNum = Application.InputBox("Кількість порожніх рядків, які потрібно вставити", xTitleId, Тип:=1)
Якщо xInsertNum = False Тоді
MsgBox " Кількість порожніх рядків, які потрібно вставити ", vbInformation, xTitleId
Exit Sub
End If
Встановити WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = Невірний
Для xRowIndex = xLastRow до 1 кроку -1
Встановити Rng = WorkRng.Range("A" & xRowIndex)
Якщо Rng.Value = "0" Тоді
Rng.Offset(1, 0).Resize(xInsertNum).EntireRow.Insert Shift:=xlDown
End If
Далі
Application.ScreenUpdating = True
End Sub

Нижній – для вставки рядків вище.
Цей коментар був мінімізований модератором на сайті
Привіт, Сонячко, цей макрос мені ідеально підходить; мені просто потрібно було змінити кількість рядків на 30 і змінити 0 на текст: "Завершальний баланс". Але тепер я хочу скопіювати виділення клітинок висотою 30 рядків у 30 порожніх рядків, які щойно вставив цей макрос. Чи можете ви запропонувати новий макрос (або поправку до цього), щоб скопіювати та вставити діапазон у кожні 30 порожніх рядків. Я назвав діапазон для копіювання та вставки "шаблон".
Цей коментар був мінімізований модератором на сайті
Мені потрібна величезна допомога з цього питання. У мене є 2 стовпці, у 1-му я маю дані, час 01/01/2016 05:00:00, дні/місяці/рік година/хвилина/секунди, а у 2-му стовпці – відповідні дані, пов’язані з часом.

Моя проблема полягає в тому, що я хочу додати час даних між рядками, оскільки у мене є дні проміжків. 1-й рядок — 01, а 01-й ряд — наприклад, 2016, тож у мене 2 днів. і цей код у мене не працює.

Чекаємо відгуків, будь ласка! Спасибі
Цей коментар був мінімізований модератором на сайті
Ви можете спробувати цей VBA

Sub InsertValueBetween()
'Оновлення 20130825
Dim WorkRng як діапазон
Dim Rng як дальність
Dim outArr як варіант
Dim dic як варіант
Встановити dic = CreateObject("Scripting.Dictionary")
'При помилці Відновити далі
xTitleId = "KutoolsforExcel"
Встановіть WorkRng = Application.Selection
Встановіть WorkRng = Application.InputBox("Діапазон", xTitleId, WorkRng.Address, Тип:=8)
num1 = WorkRng.Range("A1").Значення
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
інтервал = num2 - num1
ReDim outArr(1 до інтервалу + 1, 1 до 2)
Для кожного кільця в робочому кільці
dic(Rng.Value) = Rng.Offset(0, 1).Value
Далі
Для i = 0 До інтервалу
outArr(i + 1, 1) = i + num1
Якщо dic.Exists(i + num1) Тоді
outArr(i + 1, 2) = dic(i + num1)
Ще
outArr(i + 1, 2) = ""
End If
Далі
З WorkRng.Range("A1").Resize(UBound(outArr, 1), UBound(outArr, 2))
.Value = outArr
.Виберіть
Кінець з
End Sub


Або якщо у вас є Kutools для Excel, ви можете спробувати цю функцію:
Цей коментар був мінімізований модератором на сайті
Велике дякую, я спробував обидва, 1-й, оскільки у мене близько 500 рядків даних, я роблю це для всіх 500 рядків і нічого не робить, я думаю, що, можливо, це має обмеження щодо рядків для використання, і наприклад, коли я вибираю лише перші 5 рядків, він не створює відсутні рядки, а замінює рядки для відсутніх даних.

Ще одна проблема, яку я маю, полягає в тому, що мої дані часу також містять день/місяць/рік HH: MM: SS
Цей коментар був мінімізований модератором на сайті
Від 2 до 3 він створює відсутні дані, які я хочу, добре, але значення 03/01/2016 усувається, і є певні дані про час, які вилучаються те, що я також не хочу
Цей коментар був мінімізований модератором на сайті
На жаль, код VBA вам не допоміг, я не можу знайти метод, який може працювати для формату дати та часу. Якщо ви нарешті знайдете рішення, не могли б ви повідомити мені? Дякую.
Цей коментар був мінімізований модератором на сайті
Знову привіт, Сонячко, мені вдалося відредагувати цей код (я зміню рядок num1 на A2 та With WorkRng.Range("A2:A100000").Resize(UBound(outArr, 1), UBound(outArr, 2) ):


Sub InsertValueBetween()
'Оновлення 20130825
Dim WorkRng як діапазон
Dim Rng як дальність
Dim outArr як варіант
Dim dic як варіант
Встановити dic = CreateObject("Scripting.Dictionary")
'При помилці Відновити далі
xTitleId = "KutoolsforExcel"
Встановіть WorkRng = Application.Selection
Встановіть WorkRng = Application.InputBox("Діапазон", xTitleId, WorkRng.Address, Тип:=8)
num1 = WorkRng.Range("A2").Значення
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
інтервал = num2 - num1
ReDim outArr(1 до інтервалу + 1, 1 до 2)
Для кожного кільця в робочому кільці
dic(Rng.Value) = Rng.Offset(0, 1).Value
Далі
Для i = 0 До інтервалу
outArr(i + 1, 1) = i + num1
Якщо dic.Exists(i + num1) Тоді
outArr(i + 1, 2) = dic(i + num1)
Ще
outArr(i + 1, 2) = ""
End If
Далі
З WorkRng.Range("A2:A100000").Змінити розмір(UBound(outArr, 1), UBound(outArr, 2))
.Value = outArr
.Виберіть
Кінець з
End Sub



Я показую вам графіки, він не працює на 100%, тому що не створює час від A1 до A2
Цей коментар був мінімізований модератором на сайті
Ось моє запитання, і я думаю, що воно дуже складне.. чи є код vba, який додає новий рядок під відфільтрованим стовпцем і копіює лише перші три клітинки в доданий новий рядок і продовжує робити це, поки користувач не перестане натискати "ввести" та скасувати фільтрацію відфільтрованих осередків?
Цей коментар був мінімізований модератором на сайті
Ваше питання дещо складне і складне, ви можете розмістити його на нашому форумі, можливо, хтось зможе вам відповісти. https://www.extendoffice.com/forum.html
Цей коментар був мінімізований модератором на сайті
Привіт, я просто хочу запитати, як додати рядок, якщо умова полягає в тому, що додати рядок слід, коли в клітинці вже є дані (це для книги Excel з великою кількістю аркушів :) Дякую!
Цей коментар був мінімізований модератором на сайті
можливо, цей код vba допоможе вам. Він додасть рядки, якщо верхній рядок не порожній

Піддопомога()
Дим рахувати, як довго
Для count = ActiveSheet.UsedRange.Rows.count До 1 кроку -1
Якщо Information.IsEmpty(Cells(count, 1)) = False, то рядки(count + 1).Insert
Наступний рахунок
End Sub
Цей коментар був мінімізований модератором на сайті
Привіт, я намагаюся використовувати цей код для введення рядка, коли перші 4 цифри в клітинці змінюються (якщо це навіть можливо)

наприклад,
2222A
2222B
2223K


рядок буде вставлено після 2222B, оскільки 3-е число - це 3, а не 2

Спасибі, хлопці!!
Цей коментар був мінімізований модератором на сайті
Привіт, дякую за це, однак у мене є інший сценарій, коли мені потрібно вставити осередок під значенням, яке не дорівнює нулю. Цінуйте будь-яку пропозицію.
Цей коментар був мінімізований модератором на сайті
Привіт, Джіна, я просто знайшов код, щоб вставити порожній рядок над клітинкою, яка не є порожньою, можливо, хтось зможе налаштувати його відповідно до ваших потреб.

Підкладні рядки_вставки()
Dim LR As Long, r As Long

Application.ScreenUpdating = Невірний
LR = Діапазон("A" & рядків.Кільк.).Кінець(xlUp).Рядок
Для r = LR До 1 Крок -1
Якщо Len(Range("A" & r).Value) > 0, то
Рядки(r).Вставка
End If
Наступний р
Application.ScreenUpdating = True
End Sub

прибути з https://www.mrexcel.com/forum/excel-questions/548675-adding-blank-line-above-row-non-blank-cell.html
Цей коментар був мінімізований модератором на сайті
Привіт, це дуже корисно. Що робити, якщо я захочу додати два рядки нижче і захотів би більше значень. Наприклад, я хочу додати два рядки після значення 26/04/2019, а потім два рядки після 03/04/2019, і список можна продовжувати. Як мені продовжувати додавати до vba? Вибачте, я ще новачок. Заздалегідь спасибі.
Цей коментар був мінімізований модератором на сайті
Привіт, Сафа, можливо, ви можете спробувати вставити порожні рядки/стовпці від Kutools.
Цей коментар був мінімізований модератором на сайті
Sub BlankLine()
'Оновлення до 20150203
Dim Rng як дальність
Dim WorkRng як діапазон
On Error Resume Next
xTitleId = "KutoolsforExcel"
Встановіть WorkRng = Application.Selection
Встановіть WorkRng = Application.InputBox("Діапазон", xTitleId, WorkRng.Address, Тип: = 8)
Встановити WorkRng = WorkRng.Columns(1)
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = Невірний
Для xRowIndex = xLastRow до 1 кроку - 1
Встановити Rng = WorkRng.Range("A" & xRowIndex)
Якщо Rng.Value = "0" Тоді
Rng.EntireRow.Insert Shift: = xlDown
End If
Далі
Application.ScreenUpdating = True
End Sub


Мені потрібно, щоб це працювало щоразу, коли я вставляю щось у клітинку, а також з більшою кількістю змінних. Я маю на увазі, що якщо я вставлю 2 в клітинку, мені потрібно вставити 2 рядки, а не лише 1.
Цей коментар був мінімізований модератором на сайті
Мені потрібен макрос для додавання рядків на основі стовпця кількості, де, якщо кількість більше 1, він вставляє кількість рядків -1. Якщо кількість дорівнює 5, вона вставляє 4 рядки під нею, заповнює дані та змінює викликану кількість з 5 на 1 у кожному рядку. Пропустити всю кількість 1.
Цей коментар був мінімізований модератором на сайті
Скажіть мені код, до якого я хочу додати певну кількість рядків на основі значення комірки. наприклад, якщо клітинка містить цифру 18, автоматично потрібно додати 18 рядків там, де я хочу, а решта таблиці/комірки має зсунутися вниз.
Цей коментар був мінімізований модератором на сайті
Велике спасибі за це, дійсно величезна економія часу. Чи можна було б додати код, який дозволить мені вставити текст у новий рядок. Наприклад, я вставляю нові рядки на основі цільового значення "x", потім я хочу додати текстове значення "y" в клітинку під цільовим значенням "x". Це можливо?
Цей коментар був мінімізований модератором на сайті
Привіт. Макрос працює для мене, але чи є спосіб завжди встановлювати діапазон/параметри у стовпець J без того, щоб поле введення взагалі з’являлося? Я хотів би, щоб він пропустив крок вікна введення. Крім того, я переконався, що безпосередньо перед цим макросом останній рядок мого попереднього макросу є Range("J:J"). Виберіть, щоб переконатися, що весь стовпець J уже вибрано.
Це те, чим я користувався досі.

Dim Rng як дальність
Dim WorkRng як діапазон
On Error Resume Next
xTitleId = "Натисніть OK, щоб продовжити"
Встановіть WorkRng = Application.Selection
Встановіть WorkRng = Application.InputBox("Діапазон", xTitleId, WorkRng.Address, Тип:=8)
Встановити WorkRng = WorkRng.Columns(1)
SendKeys "~"
xLastRow = WorkRng.Rows.Count
Application.ScreenUpdating = Невірний
Для xRowIndex = xLastRow до 1 кроку -1
Встановити Rng = WorkRng.Range("A" & xRowIndex)
Якщо Rng.Value = "Нова лінія GMS", Тоді
Rng.EntireRow.Insert Shift:=xlDown
End If
Далі


Я спробував поекспериментувати за допомогою команди SendKeys "~" між деякими кроками, щоб спробувати змусити її автоматично натиснути enter, коли з'явиться поле введення, але це також не спрацювало. Я не був впевнений, де саме використовувати команду SendKeys у макросі або чи вона буде працювати з полем введення!
Цей коментар був мінімізований модератором на сайті
будь ласка, допоможіть мені мати дані. У мене є дані за один місяць, тому я повинен вставити порожні рядки відповідно до часу виходу
Цей коментар був мінімізований модератором на сайті
Привіт, hr.babu08, вибачте, що відповідь запізнилася. Я припускаю, що ви хочете вставити порожні рядки або зробити позначку для відсутніх даних послідовності, якщо так, ви можете спробувати Kutools for Excel функцію «Знайти відсутній порядковий номер». Ось підручник про цю функцію: https://www.extendoffice.com/product/kutools-for-excel/excel-find-missing-numbers-in-sequence.htmlIf якщо вам потрібні інші методи для вставки порожніх рядків для відсутньої послідовності, відвідайте:https://www.extendoffice.com/documents/excel/3522-excel-find-missing-dates.html</div>;
Цей коментар був мінімізований модератором на сайті
привіт,
Чи можна використовувати/змінювати цей знак для кольорових клітинок?
Мені потрібно вставити принаймні 10 рядків над кінцем кожної кольорової серії.
Thx!
Цей коментар був мінімізований модератором на сайті
Мені потрібно додати певні рядки зі значеннями в них для певного вмісту комірки, але я не знаю, як це зробити без необхідності вручну робити понад 3800 рядків

Приклад: A1 = Node1
Мені потрібно вставити рядок і ввести значення Scanner
Введіть інший рядок і введіть значення Принтер
ще один рядок зі значенням CD.
І т.д.
Цей коментар був мінімізований модератором на сайті
Привіт, Кріс, ось VBA може допомогти вам автоматично вставити три рядки (сканер, принтер, компакт-диск), коли значення дорівнює Node1.
Sub BlankLine()
'ByExtendoffice
Dim Rng As Range

Dim WorkRng As Range

Dim xRngI As Range

On Error Resume Next

xTitleId = "KutoolsforExcel"

Set WorkRng = Application.Selection

Set WorkRng = Application.InputBox("Select a range", xTitleId, WorkRng.Address, Type:=8)

Set WorkRng = WorkRng.Columns(1)

xLastRow = WorkRng.Rows.Count

Application.ScreenUpdating = False

For xRowIndex = xLastRow To 1 Step -1

  Set Rng = WorkRng.Range("A" & xRowIndex)

  If Rng.Value = "Node1" Then

    Rng.Offset(1, 0).EntireRow.Insert Shift:=xlDown

    Rng.Offset(1, 0).EntireRow.Insert Shift:=xlDown

    Rng.Offset(1, 0).EntireRow.Insert Shift:=xlDown

    Rng.Offset(1, 0).Value = "Scanner"

    Rng.Offset(2, 0).Value = "Printer"

    Rng.Offset(3, 0).Value = "CD"

  End If

Next

Application.ScreenUpdating = True

End Sub

Будь ласка, дайте мені знати, чи працює для вас.
There are no comments posted here yet
Load More
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця

Слідуй за нами

Copyright © 2009 - WWW.extendoffice.com. | Всі права захищені. На основі ExtendOffice. | Карта сайту
Microsoft та логотип Office є товарними знаками або зареєстрованими товарними знаками Microsoft Corporation у США та / або інших країнах.
Захищений Sectigo SSL