我在vba用户窗体上有20个文本框,这些文本框应该从条形码读取器获取它们的值,我创建了一个while循环来从这些文本框获取值,并在下一个空行中输入它们,但是当我检查结果我遇到2个问题
J = 0
While J < 20
LastRow = ws.Range("A" & Rows.Count).End(xlUp).Row + 1
ws.Range("A" & LastRow).Value = Now()
ws.Range("B" & LastRow).Value = Me.Controls("TextBox" & J + 1).Value
ws.Range("D" & LastRow).Value = Me.Controls("TextBox" & J + 2).Value
ws.Range("I" & LastRow).Value = TextBox21.Value
J = J + 1
Wend
答案 0 :(得分:1)
尽管我在评论中列出了该问题,但仍会以此为答案,以便将其标记为这样:
J = 0
While J < 20
LastRow = ws.Range("A" & Rows.Count).End(xlUp).Row + 1
ws.Range("A" & LastRow).Value = Now()
ws.Range("B" & LastRow).Value = Me.Controls("TextBox" & J*2 + 1).Value
ws.Range("D" & LastRow).Value = Me.Controls("TextBox" & J*2 + 2).Value
ws.Range("I" & LastRow).Value = TextBox21.Value
J = J + 1
Wend
此后可能要检查您的J max ...
第1行使用J = 0,因此文本框1,文本框2
第2行使用j = 1,因此文本框1 * 2 + 1(3)和文本框1 * 2 + 2(4)
第3行使用j = 2,因此文本框2 * 2 + 1(5)和文本框2 * 2 + 2(6)
等