У меня есть таблица Excel, содержащая таблицу. Я хочу иметь возможность вставлять заданное количество строк в зависимости от значения, вставленного в конкретную ячейку. Поэтому, если значение равно «3», оно будет вставлять 3 строки, если значение равно «6», оно будет вставлять 6 строк и так далее. Я не знаю, как справиться с этой проблемой. Может ли кто-нибудь помочь мне решить эту проблему?Как вставить строки на основе значения ячейки в excel
-4
A
ответ
1
при условии:
ячейка "A1" является тот, в котором вы бы принимать пользовательский ввод
строка будет вставлена прямо под ячейкой "A1"
в вы можете попробовать этот код для размещения в соответствующей панели кода рабочего листа:
Private Sub Worksheet_Change(ByVal Target As Range)
If Selection.Count > 1 Then Exit Sub '<-| exit if edited cell is part of a selection larger than 1 cell
With Target '<-- reference changed cell
If .Address = "$A$1" Then '<--| proceed if it is the "Rows n° to add" cell (change "$A$1" to your actual relevant cell address)
If IsNumeric(.Value) Then '<--| proceed if it contains a numeric value
If CLng(.Value) > 0 And CLng(.Value) < 3 Then '<--| proceed if its value fits some numeric range (change range bounds to you actual needs)
.Offset(1).Resize(CLng(.Value)).EntireRow.Insert
End If
End If
End If
End With
End Sub
см. Комментарии относительно того, где вы можете настроить проверку ввода пользователя
Для этого вам нужна vba. Добавлены теги. Но нам нужна дополнительная информация. Как насчет примера? До и после. – Andreas
@ Krishan Kavinda, если вы хотите привлечь внимание людей и получить ответы на свои сообщения, вам нужно предоставить дополнительную информацию, структуру ваших данных (скопировать с какого листа, диапазона, в какой диапазон). также, совместное использование попыток вашего кода увеличит ваши шансы –
в моем случае Я хочу добавить количество видов овощей, и пользователь должен добавить номер. чтобы число ниже строк должно быть изменено –