将数据返回到单元格范围

以下代码允许来自表单元格范围的数据:

Private Sub UserForm_Initialize() listTo.Clear listCC.Clear listTo.List = Worksheets("Main").Range("C12:C26").Value listCC.List = Worksheets("Main").Range("D12:D26").Value End Sub 

这工作正常。 那么现在我的问题是如果用户点击Updatebutton,如何将它们返回到工作表。 我在这里find了一些答案,但我看不到任何更改或似乎不工作。 以下是我编辑的代码:

 Private Sub btnUpdate_Click() Dim dataItems As Range With Me.listTo Dim Data() ReDim Data(1 To .ListCount, 1 To 1) Data = .List With Worksheets("Main") Set dataItems = .Range("C12", .Range("C12").Offset(Me.listTo.ListCount - 1, 0)) End With With dataItems .Value = Data End With End With End Sub 

这只有在我第一次运行代码的时候才起作用,但是如果我重新运行它,它就不能工作了。 任何帮助?

我不知道为什么你的代码会返回不同的结果,如果你跑了两次。

这是一个更简单的方法来做你想做的事情:

 Private Sub btnUpdate_Click() Worksheets("Main").Range("C12").Resize(listTo.ListCount).Value = listTo.List End Sub