|
本帖最后由 shalisi 于 2020-1-24 00:59 编辑
由于要显示的数据是从表中间开始的,所以没有ListBox没有标题
我自己写的老是下标越界
Private Sub UserForm_Initialize()
With Sheets("ShuJu")
Dim arr, a&, b&, brr2, k&, brr1, i&, irow&, t&
arr = .Range("A1:A" & .Range("A" & Sheets("ShuJu").Rows.Count).End(xlUp).Row)
For a = 2 To UBound(arr, 1)
If Sheets("FaHuoDan").Cells(6, 10) = .Cells(a, 1) Then
Exit For
End If
Next
For b = UBound(arr, 1) To 2 Step -1
If Sheets("FaHuoDan").Cells(6, 10) = .Cells(b, 1) Then
Exit For
End If
Next
arrsj = Sheets("ShuJu").Range(Sheets("ShuJu").Cells(a, 1), Sheets("ShuJu").Cells(b, 7))
End With
brr2 = Array("客户名称", "商品编号", "商品名称", "规格", "单价", "数量", "单位")
k = k + 1
ReDim brr1(1 To k, 1 To 7)
For i = 1 To 7
brr1(k, i) = brr2(i - 1)
Next
For irow = a To b
k = k + 1
ReDim Preserve brr1(1 To k, 1 To 7)
For t = 1 To 7
brr1(k, t) = arrsj(irow, t)
Next
Next irow
With Me
.StartUpPosition = 0
.Left = ActiveCell.Offset(0, 1).Left + 20
.Top = ActiveCell.Offset(1, 0).Top + 75
End With
Me.ListBox1.List = brr1
Me.ListBox1.Selected(1) = True
End Sub
|
|