此处列出的内容如下: See Example (图片托管在Imgur上)
如果图片无法加载,这就是一个嗤之以鼻......
位置-----标题-----过去的日子
A2:0001 | B2:电影1 | C2:32
A3:0001 | B3:电影2 | C3:18
A4:0001 | B4:电影3 | C4:10
A5:0004 | B5:电影1 | C5:32
A6:0007 | B6:电影1 | C6:32
A7:0007 | B7:电影2 | C7:18
A8:0009 | B8:电影1 | C8:32
A9:0014 | B9:电影1 | C9:32
我有一个userform,它将返回列表中的第一个项目,但不会返回完整列表。理想情况下,我希望远离使用列表框,主要是因为目标是能够复制完整列表中的项目。
我已尝试过Index()公式,但我不知道如何将其转移到VBA中工作。
你有任何帮助会很棒!
答案 0 :(得分:1)
我已经为您写了这封信,如果您的位置值在A
列中给出,则B
中的标题和C
中的过去日期应该有效:
Private Sub SUBMITBUTTON_Click()
Dim counter As Integer, TITLELIST(), DAYSPAST(), fullString As String
fullString = ""
If LOCATIONTEXTBOX.Text = "" Then
MsgBox "Please input a location"
Exit Sub
End If
For Each Cell In ActiveSheet.UsedRange.Cells
If Cell.Value = LOCATIONTEXTBOX.Text Then
counter = counter + 1
End If
Next
ReDim TITLELIST(counter)
ReDim DAYSPAST(counter)
counter = 0
For i = 1 To Cells(1, 1).End(xlDown).Row
If Cells(1, i).Value = LOCATIONTEXTBOX.Text Then
TITLELIST(counter) = Cells(i, 2).Value
DAYSPAST(counter) = Cells(i, 3).Value
fullString = fullString & CStr(TITLELIST(counter)) & "," & CStr(DAYSPAST(counter)) & ","
counter = counter + 1
End If
Next
MsgBox fullString
Range("H8").Value = fullString
End Sub
如果您更改了SUBMITBUTTON和LOCATIONTEXTBOX的名称,那么它应该适用于您的用户表单。