Dim h As String
 h = Range("D8").Value为什么h是"",应该怎么去Range("D8")中的值啊??

解决方案 »

  1.   

    因为你单元格d8中没有值  所以h=""
    Range("D8").Value="" 'D8中的值为空 
      

  2.   

    试试:
    Dim h As String 
    h = "Try"
    Range("D8").Value=h
    h =Range("D8").Value
      

  3.   

    试试: 
    Dim h As String 
    sheets("你的工作表名").select 
    h =Range("D8").Value
      

  4.   


        Dim h As String
        h = Range("D8").Value
        MsgBox h這樣寫沒問題的啊。
      

  5.   

    楼主的语句没有问题,得到空值应该是其它的原因用以下语句D8的值是能显示出来的
    Private Sub CommandButton1_Click()
    Dim h As String
    h = Range("D8").Value
    MsgBox (h)
    End Sub
      

  6.   

    我个人认为12楼的解释是正确的,3楼的问题写出来了,但是根据我的实验,有点儿问题,总是提取的是第一个表的值,我认为应该加上表名:
    h=worksheets("sheet3").range("D8").value
    我试了下,在VBA中完全正确
      

  7.   

    我虽然也是刚学VBA,但是这个问题还是知道一点的.
    Private Sub CommandButton1_Click() 
    Dim h As String 
    h = Range("D8").Value 
    End Sub
    注意:保存单元格"D8"是在当前打开的EXCEL文件的当前SHEET页中就可以.
      

  8.   

    应该是你有多张SHEET吧,你最好对应下sheet
    Dim h As String 
    h = Sheets("你要使用的表名").Range("D8").Value