VBA数组返回数字而不是string
我已经创build了一个数组作为包含数字和文本的单元格的范围。 一列称为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.
我努力了
- 在创build数组之前将值
PolicyNumber
格式化为文本; - 将
PolicyNumber
两个单元格,然后放回; - 当从数组导出的值使用函数格式,cstr。
我希望能够明白这个问题。
假设policynumber列被格式化为文本,那么格式化输出为文本为我工作:
Sub getit() Dim var As Variant var = Range("a1:A2") Range("c1:c2").NumberFormat = "@" Range("c1:c2") = var End Sub
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