vba - 如何将多个值放入 1 个变量或多个变量中?
问题描述
Sub RollerCoaster()
Dim strType As String
Dim blnLoop As Boolean
Dim strCoaster As String
strType = "Wood"
Range("A2").Select
blnLoop = True
Do Until ActiveCell.Value = ""
ActiveCell.Offset(1, 0).Select
strType = ActiveCell.Offset(0, 2).Value
If strType = "Wood" Then
strCoaster = ActiveCell.Value
blnLoop = False
Else
End If
Loop
MsgBox ("The RollerCoaster that are made of Wood are " & strCoaster)
End Sub
所以我创建了一个子程序,它可以找到木制过山车,并在消息框中显示哪个过山车是用木头制成的。但是,如果列表中有更多内容,如何让我的代码显示不止一个过山车。(看图片)
解决方案
您可以创建一个数组来获取每个值。为此,您可以使用代码 Dim stringArray() As String 使字符串数组变暗,然后将 strCoaster 的每个值包含在该数组中。您还可以使用以下代码对变量赋值中的连接进行相当小的调整:
Sub RollerCoaster()
Dim strType As String
Dim blnLoop As Boolean
Dim strCoaster As String
strType = "Wood"
Range("A2").Select
blnLoop = True
Do Until ActiveCell.Value = ""
ActiveCell.Offset(1, 0).Select
strType = ActiveCell.Offset(0, 2).Value
If strType = "Wood" Then
strCoaster = ActiveCell.Value & " ," & strCoaster
blnLoop = False
Else
End If
Loop
MsgBox ("The RollerCoaster that are made of Wood are " & strCoaster)
End Sub
如果您迭代地连接这些值,您可以列出所有值。如果你愿意,你也可以使用 & vbCrLf & 换行。
推荐阅读
- python - 如何使用 python3 在 b'\\xe5' 和 b'\xe5' 之间转换?
- amazon-web-services - 获取文件内容作为 Terraform 输出
- javascript - 从 FIrebase 实时数据库中获取数据
- react-native-firebase - 链接帐户时如何从“auth/credential-already-in-use”错误中恢复
- java - 如何通过托管 Bean 在类中设置属性?
- java - 邮递员表单数据发送带有文件的复杂对象
- java - 如何修复java下载按钮连续单击ClientAbortException:java.io.IOException错误?
- angular - 如何在 Ionic 中以编程方式触发管道?
- tensorflow - Tensorflow js:如何将 Frozen 模型转换为网络友好格式?
- objective-c - Objective C类的block属性如何实现