VBA вставить количество строк в зависимости от переменной в конце таблицы - PullRequest
0 голосов
/ 11 февраля 2020

Я пытаюсь написать некоторый код, чтобы выровнять количество строк в двух разных таблицах, таблица 1 (MaintSetup) - это таблица, в которой пользователь заполняет всю информацию, в то время как таблица 2 (MaintSched) отображает ее. Пользователям действительно нужно всего лишь добавлять строки в таблицу 1, поэтому я хотел создать код, который бы автоматически добавлял строки в таблицу 2 на основе разницы между строками.

Я не очень компетентен в VBA, поэтому я использовал некоторые функции Excel для вычисления разницы в строках и перечислил ее в ячейке K9 (IE: если таблица 1 на 3 строки длиннее, чем ячейка таблицы 2 K9 на фоне рабочего листа, имеет "3".

Я придумал некоторый код для добавления указанного числа строк, но не смог адаптировать его для разного количества строк. Это то, что я придумал, изначально мне было всего от 1 до 10 для добавления 10 строк .

Sheets("Background").Select
Dim Dif As Integer
Diff = Range("K9")

Sheets("Maintenance Setup").Select

Dim ws As Worksheet
Set ws = ActiveSheet
Dim tbl As ListObject
Set tbl = ws.ListObjects("MaintSched")

Dim i As Byte
    For i = 1 To Diff
    tbl.ListRows.Add
Next i

1 Ответ

0 голосов
/ 12 февраля 2020

Оказывается, я просто испортил свою переменную и назвал определил ее как Dif, пытаясь использовать Diff. Приведенный ниже код работал для меня с незначительным редактированием. Также выяснилось, что Dim i в качестве байта не требуется.

Sheets("Background").Select
Dim **Diff** As Integer
Diff = Range("K9")

Sheets("Maintenance Setup").Select

Dim ws As Worksheet
Set ws = ActiveSheet
Dim tbl As ListObject
Set tbl = ws.ListObjects("MaintSched")

Dim i As Byte
    For i = 1 To Diff
    tbl.ListRows.Add
Next i
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...