String 获取引号之间的字符串值

String 获取引号之间的字符串值,string,vba,collections,String,Vba,Collections,我有一个从外部数据库获取的值字符串。 我想获取一个集合项,该集合项由键构建为字符串 Dim stations As New Collection Dim trains As New Collection For i = 1 To 60 Dim new_station As New station With new_station .id = S_stationsDataSet.Node_Table.Rows(i - 1)(

我有一个从外部数据库获取的值字符串。 我想获取一个集合项,该集合项由键构建为字符串

 Dim stations As New Collection
    Dim trains As New Collection
    For i = 1 To 60
        Dim new_station As New station
        With new_station
            .id = S_stationsDataSet.Node_Table.Rows(i - 1)(0)
            .name = S_stationsDataSet.Node_Table.Rows(i - 1)(1)
            .t = S_stationsDataSet.Node_Table.Rows(i - 1)(2)
            .name_t = new_station.name & new_station.t
            .x = S_stationsDataSet.Node_Table.Rows(i - 1)(3)
            .y = S_stationsDataSet.Node_Table.Rows(i - 1)(4)
        End With
        stations.Add(new_station, new_station.name_t)
    Next

    Dim a, c As String
    Dim b As Single
    For i = 1 To 62 Step 2
        Dim new_train As New train
        With new_train
            a = S_trainsDataSet.T.Rows(1)(i)
            b = S_trainsDataSet.T.Rows(1)(i + 1)
            c = a & b
            *new_train.src = stations.Item("c")*
        End With
        trains.add(new_train)
    Next
我必须用两个引号“”来定义,我将通过键获取项目,当然它是无效的值,因为它返回“c”,而不是字符串c的值。
如何解决这个问题呢?

嗯,你试过站吗?为什么在引号之间放置变量名?参数“Index”不是有效值。请使用调试器检查
c
的值。然后检查集合中是否存在该项。请注意,
a
未定义为字符串,尽管这不重要。还要注意的是,使用新序列的
是不必要的,但是如果您确实使用了它,那么
.src=…
就足够了(但这也不重要)。c不需要加引号,它已经是一个字符串了,您当前正在传递
c
,因为它本身不是它的值。如果希望
围绕c的值,请使用
”&c&