Я делаю ERP-систему, у меня есть рабочий, но некрасивый код, который делает то, что я хочу. Я только что попытался использовать массивы в первый раз, и при его использовании я получаю только первый ввод текстового поля в свою электронную таблицу архива, хотя у меня есть еще 9 текстовых полей, назначенных этому массиву. Трудно объяснить, но легче понять, что я пытаюсь сделать в коде.
Я пытался изменить "B2" для переменной nextRow на "C2", но он все еще дает мне только первый ввод текстового поля и вставляет его в любую ячейку, впервые упомянутую в моей переменной nextRow.
(Этот код был предоставлен мне на сайте просмотра кода, но я попытался внести некоторые изменения, но безуспешно.
'Making the variable that stores the input from all 9 textboxes in the userform
Dim inputs As Variant
'Variabler for inputs
inputs = Array(TextBox1.Text, TextBox2.Text, TextBox3.Text, TextBox4.Text, TextBox10.Text, TextBox6.Text, TextBox7.Text, TextBox8.Text, TextBox9.Text)
'Declaring the variable for the next available row from B to J so I can copy the input from each textbox into the corresponding cell in the Archive worksheet.
Dim nextRowB As Range
Set nextRowB = Sheets("Arkiv").Range("C" & Rows.Count & ":J" & Rows.Count).End(xlUp).Offset(1, 0)
nextRowB.Value = inputs
Вместо того, чтобы копировать каждый ввод текстового поля в соответствующие ячейки, он копирует только первый ввод текстового поля (textbox1) в первый столбец следующей доступной строки, а затем позволяет оставшимся статьям быть пустыми.
Я ожидал, что этот код вставит все входные данные текстового поля в следующую доступную строку в столбце B вплоть до J, используя тот же порядок, который я использовал при назначении различных входных данных текстового поля для массива.