vba excel ado stream to extract to utf8:非scientifc格式的数字

我遇到了一个问题:我使用ADO Stream对象从EXCEL 2013的数据表中创build一个UTF8 – CSV文件

在我的数据表中,我有大数字,这些数字是以科学格式自动设置的: 0,191370165745856在我的csv文件中设置为1,93370165745856E-02

我试图强制这个值与一个非科学的格式或文本格式与Selection.NumberFormat =“一般”Selection.NumberFormat =“@”但最后总是有相同的结果在我的Excel文件中创buildADO STREAM对象格式很好。

我的ADO STREAM对象function:

'================================================== Public Function Zone2CSV_UTF8(fichier As String, Onglet As String, Zone As String) Dim nb_l, nb_c, c, l As Integer Dim ligne As String Dim objStream As ADODB.Stream ' init stream Set objStream = New ADODB.Stream objStream.Open objStream.Charset = "utf-8" objStream.Type = adTypeText objStream.LineSeparator = adCRLF objStream.Position = 0 nb_c = Worksheets(Onglet).UsedRange.Columns.Count nb_l = Worksheets(Onglet).UsedRange.Rows.Count With Worksheets(Onglet).Range(Zone) For l = 1 To nb_l ligne = "" For c = 1 To nb_c ligne = ligne & Replace(Replace(Replace(.Cells(l, c), "\r", " "), "\n", " "), ";", ".") & ";" If c = nb_c Then ligne = Left(ligne, Len(ligne) - 1) End If Next c objStream.WriteText ligne, adWriteLine Next l End With objStream.SaveToFile fichier, adSaveCreateOverWrite ' close up and return objStream.Close Set objStream = Nothing Zone2CSV_UTF8 = RemoveBOM(fichier) 

感谢你们对我的帮助。