我希望在消息框中显示多个变量:ID,客户名称,添加日期,地点和状态。目前,我只能显示ID,其他变量显示Runtime 13 Error。我的代码如下。
Sub LookupTicket()
Dim ibox, tid As Range
Dim dad, sta, ven, cna As Variant
Set Sheet = Worksheets("ControlSheet")
dad = Range("DateAdded_CS").Value
sta = Range("Status_CS").Value
ven = Range("Venue_CS").Value
cna = Range("CustName_CS").Value
ibox = InputBox("Enter Ticket ID:", "Redeem Ticket")
If ibox <> "" Then
Set tid = Sheet.Range("A:A").Find(ibox)
If tid Is Nothing Then
MsgBox "Ticket ID not found!", vbCritical, "Redeem Ticket"
Else
'MsgBox "Ticket details for ID: " & tid & vbNewLine & "Date Added: " & dad & vbNewLine & "Customer Name: " & cna & vbNewLine & "Venue: " & ven & vbNewLine & "Status: " & sta, vbInformation, "Lookup Ticket Details"
MsgBox "ID: " & sta, "Lookup Ticket"
End If
End If
感谢大家的任何意见。
答案 0 :(得分:0)
变量tid
是一个范围。如果它将包含一个单元格,您应该将其更改为tid.Value
。
编辑:检查tid.count = 1
是否在尝试从某个范围内的一组单元格中取值时出现类型不匹配(13)错误。您的Range.Find(ibox)
可能会返回多个值。