Excel中的CSV小数点

Excel中的CSV小数点,excel,csv,Excel,Csv,我有一个具有以下值的CV: 3271.96;274;272;1;1;0;1;0.071690;0;0;0;0;0;0;1.753130;1.75;0;1.75; 但是,当我用Excel打开文件时,我得到以下信息: 3271.96 274 272 1 1 0 1 0.071690 0 0 0 0 0 0 1.753.130 1.75 0 1.75 为什么将“1.753130”转换为“1.753.130”?(1.753130是十进制数)

我有一个具有以下值的CV:

3271.96;274;272;1;1;0;1;0.071690;0;0;0;0;0;0;1.753130;1.75;0;1.75;
但是,当我用Excel打开文件时,我得到以下信息:

3271.96 274 272 1   1   0   1   0.071690    0   0   0   0   0   0   1.753.130   1.75    0   1.75
为什么将“1.753130”转换为“1.753.130”?(1.753130是十进制数)我如何“强制”excel理解那些是十进制数

我使用web应用程序创建cvs文件,因此修改excel配置很困难,因为许多人进入我的网站并将csv文件下载到他们的机器中

提前谢谢

  • csv
    重命名为
    .txt
  • 打开excel
  • 转到文件-->打开并指向txt文件
  • 完成导入它的步骤
  • 确保使用
    作为定界符

  • 我也有同样的问题,但仅仅这个解决方案对我来说并不奏效


    在此之前,我必须进入Office图标->Excel选项->高级,并将千分界线从“.”设置为“”(无)。

    以下是我使用的答案:

    • 转到excel工作表上的“数据”选项卡

    • 单击文本中的
      按钮

    • 然后选择文本或csv文件

    • 然后,导入向导将出现。选择逗号分隔或空格分隔选项

    • 然后选择delimiter。(如果您不希望在导入小数时出现问题,这会更好)

    • 然后,在下一个窗口中,将有“常规列类型”的“高级”选项。单击高级按钮并选择如何区分小数和千


    将十进制分隔符更改为“.”,并删除带有空格的千位分隔符。

    有一种更直接的方法将数据从text/csv导入Excel(2017):

    • 在Excel中打开一本空白手册,然后单击“从文本/csv导入数据”
    • 选择文件
    • 助手将显示数据预览,但如果您从带有十进制/科学数字的csv导入,则所有数据都将被识别为文本
    • 导入之前,单击“编辑”,您将看到一个Excel电子表格,其中包含数据的预览
    • 如果单击“高级编辑器”按钮,将出现一个新窗口,其中显示Excel所做的查询
    您将看到如下内容:

    let
        Origin = Csv.Document(File.Contents("C:\Users\JoseEnriqueP\Downloads\evaluation_output.txt"),[Delimiter=",", Columns=8, Encoding=1252, QuoteStyle=QuoteStyle.None]),
        #"Updated type" = Table.TransformColumnTypes(Origin,{{"Column1", Int64.Type}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}})
    in
        #"Updated type"
    
    然后,您可以直接写下每列的类型: -文本:键入文本 -整数:Int64.Type -小数:双精度。键入

    进口代码如下:

    let
        Origin = Csv.Document(File.Contents("C:\Users\JoseEnriqueP\Downloads\evaluation_output.txt"),[Delimiter=",", Columns=8, Encoding=1252, QuoteStyle=QuoteStyle.None]),
        #"Updated type" = Table.TransformColumnTypes(Origin,{{"Column1", Int64.Type}, {"Column2", Int64.Type}, {"Column3", Int64.Type}, {"Column4", type text}, {"Column5", Double.Type}, {"Column6", Double.Type}})
    in
        #"Updated type"
    

    通过这样做,您将直接将数据输入Excel。

    对于使用较新Excel版本(如Excel 365)解决此问题的用户。。。 如中所述,您可以在设置中激活/恢复“从文本(传统)”功能

    我喜欢的解决方案

    File - Options - Data
    


    然后您将能够获得旧的导入向导。。。遗产,但在我看来更直观。


    其他可能性

    在链接的教授Excel网站上,还显示了其他可能性。使用Excels new import(卓越新导入)对话框,如果您有多个带有数字的列,且所有列都位于与计算机区域设置不同的区域设置中,则进行导入的工作量将大得多。 使用旧向导,您可以在一分钟内完成设置。使用“新建导入”对话框,我还没有找到一种与传统导入方法一样快的方法。

    到目前为止(2020年9月),我设法以一种稍微不同的方式实现了这一点。我正在使用Office 365订阅中的Excel

    打开Excel工作表后,转到:

    • 数据(选项卡)>来自文本/CSV(获取和转换数据部分)
    选择您的文件(.txt或.csv),然后您将有3个选项:

    • 文件来源:可能您不必更改此项
    • 分隔符:选择您的分隔符(可能是逗号)
    • 数据类型检测:将其更改为“不检测数据类型”

    如果您有较新版本的Excel(如Office 365),并且不需要更正文件的编码,以下是对我有效的方法:

  • 在文件资源管理器中双击.csv文件以打开该文件
  • 选择包含十进制数的列
  • 使用“查找并替换”将所有点(.)更改为逗号(,)符号
  • 这假定不需要其他数据转换(这可能需要通过导入向导),并且Excel可以正确识别文件的编码

    如果编码也是一个问题,请在执行上述步骤之前执行以下操作:

  • 在记事本中编辑文件++
  • 打开“编码”菜单选项卡
  • 选择所需的值以转换文件的编码

  • 其他一些答案也适用,但为了简单起见,您无法击败“查找并替换”方法。无论你做什么,这里是最重要的一步:长寿,兴旺

    您使用的是荷兰版本的windows吗?您可以通过查看“控制面板”中的“区域设置”来确认这一点。如果是,请检查是否将“.”设置为千位分隔符…Excel和CSV是一个永无止境的难题,尤其是当您处于制作端,无法控制接收者使用的确切版本和语言时,这篇文章可能会给您一些启示。顺便说一句,我们切换到生成XLS主要是因为这个原因,您是否尝试过我下面的建议?@Ааааааааааааааааааааа107,所以我改变了点,现在开始工作了fine@NatyBizz您可以更改区域设置:为什么需要重命名文件?原因是,如果双击csv文件,它将假定在您的区域设置中设置了哪个定界符,而使用excel打开txt,它会询问您要使用什么定界器,只需转到数据功能区并在“获取外部数据”组中选择“从文本”。不需要重命名文件。为什么这是公认的答案?小数点分隔符在哪里