Arrays VBA数组返回数字而不是字符串

Arrays VBA数组返回数字而不是字符串,arrays,vba,excel,Arrays,Vba,Excel,我已经创建了一个数组作为包含数字和文本的单元格范围。其中一列称为PolicyNumber。这些值包括: 11/2007 8/2006 12/2005 etc. 如果我想将数组中的单元格复制回工作表,它不会返回值11/2007,8/2006,12/2005,等等,但会返回计算结果 11/2007 = 0.00548 8/2006 = 0.003988 12/2005 = 0.00598 etc. 我试过了 在创建数组之前,将值PolicyNumber格式化为文本 将PolicyNumber拆分

我已经创建了一个数组作为包含数字和文本的单元格范围。其中一列称为
PolicyNumber
。这些值包括:

11/2007
8/2006
12/2005
etc.
如果我想将数组中的单元格复制回工作表,它不会返回值
11/2007
8/2006
12/2005
,等等,但会返回计算结果

11/2007 = 0.00548
8/2006 = 0.003988
12/2005 = 0.00598
etc.
我试过了

  • 在创建数组之前,将值
    PolicyNumber
    格式化为文本
  • PolicyNumber
    拆分为两个单元格,然后将其放回原处
  • 从数组导出值时使用函数格式cstr 我希望清楚地了解这个问题

    Sub firstcheck()
    
    Dim X()
    dim ind as Worksheet, FC as Worksheet
    dim N as Double 
    
    Set ind = Sheets("Input Data")
    
    Set FC - Sheets("First Check")
    N = Application.CountA(Ind.Range("G:G"))
    
    X = ind.Range("C2:T" & N).Value 'data
    ....
    FC.Range("B2:S" & N) = X
    
    End Sub
    
    专栏:

    保单号码:

    正常工作的数据:

    99-155547/003
    99-155690/003
    99-155837/003
    99-173341/003
    99-185326/003
    
    复制了一些不起作用的数据:

    2013/00176
    2012/08233
    2012/08016
    2012/08330
    2012/08749
    2012/01122
    
    专栏:

    保单号码:

    正常工作的数据:

    99-155547/003
    99-155690/003
    99-155837/003
    99-173341/003
    99-185326/003
    
    复制了一些不起作用的数据:

    2013/00176
    2012/08233
    2012/08016
    2012/08330
    2012/08749
    2012/01122
    
    专栏:

    保单号码:

    正常工作的数据:

    99-155547/003
    99-155690/003
    99-155837/003
    99-173341/003
    99-185326/003
    
    复制了一些不起作用的数据:

    2013/00176
    2012/08233
    2012/08016
    2012/08330
    2012/08749
    2012/01122
    
    专栏:

    保单号码:

    正常工作的数据:

    99-155547/003
    99-155690/003
    99-155837/003
    99-173341/003
    99-185326/003
    
    复制了一些不起作用的数据:

    2013/00176
    2012/08233
    2012/08016
    2012/08330
    2012/08749
    2012/01122
    

    假设policynumber列的格式为文本,则将输出的格式设置为文本对我有效:

    Sub getit()
        Dim var As Variant
        var = Range("a1:A2")
        Range("c1:c2").NumberFormat = "@"
        Range("c1:c2") = var
    End Sub
    

    假设policynumber列的格式为文本,则将输出的格式设置为文本对我有效:

    Sub getit()
        Dim var As Variant
        var = Range("a1:A2")
        Range("c1:c2").NumberFormat = "@"
        Range("c1:c2") = var
    End Sub
    

    假设policynumber列的格式为文本,则将输出的格式设置为文本对我有效:

    Sub getit()
        Dim var As Variant
        var = Range("a1:A2")
        Range("c1:c2").NumberFormat = "@"
        Range("c1:c2") = var
    End Sub
    

    假设policynumber列的格式为文本,则将输出的格式设置为文本对我有效:

    Sub getit()
        Dim var As Variant
        var = Range("a1:A2")
        Range("c1:c2").NumberFormat = "@"
        Range("c1:c2") = var
    End Sub
    

    如何将值粘贴到工作表中?您需要显示您的代码如何将值粘贴到工作表中?您需要显示您的代码如何将值粘贴到工作表中?您需要显示您的代码如何将值粘贴到工作表中?你需要显示你的代码