dim A as string
A = "中国"
现在中国这个字符串放在变量A里,
我想定义一个, "中国"  这个变量如何定义。

解决方案 »

  1.   

    哈哈。你想根据A的值来定义一个新的变量吗。Private Declare Function EbExecuteLine Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Unknownn1 As Long, ByVal Unknownn2 As Long, ByVal fCheckOnly As Long) As LongPrivate Sub Command1_Click()
        Dim a As String
        a = "中国"
        ExecuteLine "dim " & a & " as long"
        ExecuteLine a & " = 10"
        ExecuteLine "debug.print " & a
    End SubPublic Function ExecuteLine(sCode As String, Optional fCheckOnly As Boolean) As Boolean
        ExecuteLine = EbExecuteLine(StrPtr(sCode), 0&, 0&, Abs(fCheckOnly)) = 0
    End Function
    10不过这样做似乎没啥意义
      

  2.   

    //变量的定义不能以中文开头
    可以啊,以前我有个程序, 里面除了sub,if 这些关键字,其他全是中文。
    Private Sub Command2_Click()
        Dim 国 As String
        国 = "123"
        Debug.Print 国
    End Sub
      

  3.   

    类似宏替换吗?vb可以实现,但被替换的变量必须用public关键字声明:Public b As StringPrivate Sub Command1_Click()
        Dim a As String
        b = "hello,this is test"
        a = "b"
        Dim c As String
        c = CallByName(Me, a, VbGet)
        MsgBox c
    End Sub
      

  4.   

    Private Sub Command1_Click()
      Dim 中国 As String
        中国 = "你好"
        MsgBox 中国
    End Sub
      

  5.   

    可以定义中文名变量,使用脚本控件Microsoft Scripting Control可处理该问题。