我只需要知道如何在消息框中包含纯文本和变量。
例如:
我可以这样做:MsgBox(variable)
我可以这样做:MsgBox("Variable = ")
但我不能这样做:MsgBox("Variable = " + variable)
答案 0 :(得分:18)
正如所建议的那样,使用string.format方法很简单,而且非常易读。
在vb.net中,“+”用于添加,“&”用于字符串连接。
在你的例子中:
MsgBox("Variable = " + variable)
变为:
MsgBox("Variable = " & variable)
我可能有点快速回答这个问题,因为看起来这些运算符都可以用于连接,但建议使用的是“&”,source http://msdn.microsoft.com/en-us/library/te2585xw(v=VS.100).aspx
也许打电话
variable.ToString()
更新
使用字符串插值(vs2015以后我相信):
MsgBox($"Variable = {variable}")
答案 1 :(得分:5)
答案 2 :(得分:0)
我遇到了同样的问题。我希望我的消息框显示消息和vendorcontractexpiration。这就是我所做的:
Dim ab As String
Dim cd As String
ab = "THE CONTRACT FOR THIS VENDOR WILL EXPIRE ON "
cd = VendorContractExpiration
If InvoiceDate >= VendorContractExpiration - 120 And InvoiceDate < VendorContractExpiration Then
MsgBox [ab] & [cd], vbCritical, "WARNING"
End If
答案 3 :(得分:0)
MsgBox("Variable {0} " , variable)
答案 4 :(得分:0)
应用过滤器选项后,我想在excel工作表中显示行数。
因此,我将最后一行的计数声明为可以添加到Msgbox的变量
Sub lastrowcall()
Dim hm As Worksheet
Dim dm As Worksheet
Set dm = ActiveWorkbook.Sheets("datecopy")
Set hm = ActiveWorkbook.Sheets("Home")
Dim lngStart As String, lngEnd As String
lngStart = hm.Range("E23").Value
lngEnd = hm.Range("E25").Value
Dim last_row As String
last_row = dm.Cells(Rows.Count, 1).End(xlUp).Row
MsgBox ("Number of test results between the selected dates " + lngStart + "
and " + lngEnd + " are " + last_row + ". Please Select Yes to continue
Analysis")
End Sub