String 将值存储在要在Select Case语句中使用的字符串中

String 将值存储在要在Select Case语句中使用的字符串中,string,vb6,String,Vb6,假设我有一个像这样的字符串 Dim Value as String Value = "373, 273" 我的目标是能够在case语句中使用值字符串 因此,一些类似于 Dim Number as integer Number = 273 Select Case Number Case Value Msgbox "Value is 273" Case else 'do nothing End select 当我运行这个case语句时,它不会读取值(273),因此它只会转到cas

假设我有一个像这样的字符串

Dim Value as String
Value = "373, 273"
我的目标是能够在case语句中使用值字符串

因此,一些类似于

Dim Number as integer
Number = 273

Select Case Number

Case Value
   Msgbox "Value is 273"

Case else
  'do nothing
End select
当我运行这个case语句时,它不会读取值(273),因此它只会转到case else

如何在select case语句中使用VALUE,以便它识别VALUE???

尝试以下方法(未测试):


你的问题是什么?@ProGrammer Updated我不确定你想在这里实现什么。。似乎您只是在尝试检查
值是否包含
编号
,在这种情况下,您只需使用
值.contains(Number.ToString())
@程序员将其标记为VB6@ProGrammer你知道如何在VB6中做到这一点吗?我需要在案例陈述中这样做:/I我不知道如何去做你所要求的在
选择案例中没有意义。我正试图摆脱harcoding值(272373),而是让它表驱动(将数字存储在字符串值中)。所以之前是案件273373。现在,我尝试让select case语句读取值字符串——如果需要添加另一个数字,可以这样做——我不必发布代码,只需更新数据库即可,这是一个完全独立的问题。您将从查询中获取值,而不是
Dim Value=“373,273”
,但它仍将以完全相同的方式运行相同的代码。案例273,373并不等同于案例“273,373”。在第一个例子中,你说这个例子处理的是273和373。在第二个例子中,您是说case处理字符串文本“273373”。最好的解决方案实际上取决于您需要做什么,取决于匹配的值。如果只是任何值,那么可以将有效值存储在集合中,并检查要比较的数字是否在集合中。如果您需要为每个值执行不同的操作,则更有可能需要对其进行硬编码。
Dim Number as Integer = 273
Dim Value = "373, 273"

Dim numAsString = CStr(Number)
If InStr(1, Value, numAsString)
    MsgBox("Value is " & numAsString)
End If