1

我正在尝试从文本文件中导入数据,这没有问题,代码运行并且数据被导入但不正确。我有这种数字的文本文件:1.3309884e-13

当我导入这些值时,Excel 没有采用正确的负指数并且正在返回1.3309884e-5并且类似。代码是这样的:

Dim ws As Worksheet, strFile As String
Set ws = ActiveWorkbook.Worksheets("DEPOSITION BC")

strFile = Application.GetOpenFilename("Text Files (*.csv),*.csv", , "Please select Black Carbon Dry Deposition bin 01 file (BCDP01)")
With ws.QueryTables.Add(Connection:="TEXT;" & strFile, _
Destination:=ws.Range("C5"))
    .TextFileParseType = xlDelimited
    .TextFileDecimalSeparator = "."
    .TextFileCommaDelimiter = True
    .TextFileStartRow = 23
    .RefreshStyle = xlOverwriteCells
    .Refresh
End With 

我不知道如何避免这个问题。

4

1 回答 1

1

导入时我已经发现了冲突。如果我还设置了千位分隔符,问题就解决了:

Dim ws As Worksheet, strFile As String
Set ws = ActiveWorkbook.Worksheets("DEPOSITION BC")

strFile = Application.GetOpenFilename("Text Files (*.csv),*.csv", , "Please select Black Carbon Dry Deposition bin 01 file (BCDP01)")
With ws.QueryTables.Add(Connection:="TEXT;" & strFile, _
Destination:=ws.Range("C5"))
    .TextFileParseType = xlDelimited
    .TextFileDecimalSeparator = "."
    .TextFileCommaDelimiter = True
    .TextFileStartRow = 23
    .TextFileThousandsSeparator = False
    .RefreshStyle = xlOverwriteCells
    .Refresh
End With
于 2021-02-22T10:50:22.100 回答