如何运行一个input框的循环,将数据放在VBA中的不同行上

我有一个电子表格,您按下表格控制button,这将提示一个input框,要求您input非商店项目的名称。 然后,如果你在input框中input某个东西,它会把它放在单元格A19中,然后它会询问你项目的前置时间,并把它放在C19中。 如果您没有在非商店物料input中input任何内容,则不会在提货箱中显示提前期。

我想要发生的是我按下button,它会询问你是否有非商店项目,如果你input任何东西,它将分配给A19,然后问你一个交货时间,并将其分配给C19,然后返回询问你非商店材料的名称,如果你把任何东西都分配给A20,然后提前到C20。 如果您在询问非商店名称时input空白,它将会结束。 我也希望这能够input一些信息,然后你可以按下button,如果在A19有一些价值,它会把它放在下面的行。

这是我目前的代码:

Sub Non_stores_material_entering() If ActiveSheet.Range("A19") = "" Then NonStores = InputBox("What is the Non-Stores Material?") Range("A19").Select ActiveCell.Value = NonStores Else: End If If ActiveSheet.Range("A19") = "" Then Else: LeadTimes = InputBox("What is the Non-Stores Material's Lead TIme?") Range("C19").Select ActiveCell.Value = LeadTimes End If End Sub 

这是一个视觉目的。 非商店电子表格图片

'Do … Loop Until'将在这里为您服务。

 Sub Non_stores_material_entering() Dim ws as Worksheet Set ws = Worksheets("Sheet1") 'change name as needed Do NonStores = InputBox("What is the Non-Stores Material?") If Len(NonStores) Then Dim lRow As Long lRow = ws.Range("A" & ws.Rows.Count).End(xlUp).Offset(1).Row ws.Cells(lRow, 1).Value = NonStores LeadTimes = InputBox("What is the Non-Stores Material's Lead TIme?") ws.Cells(lRow, 3).Value = LeadTimes End If Loop Until Len(NonStores) = 0 End Sub