怎么讲csv格式转换为xlsx

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么讲csv格式转换为xlsx相关的知识,希望对你有一定的参考价值。

具体操作步骤如下:

一、首先打开一个CSV文件,双击打开文件。

二、在菜单栏找到插入菜单,单击“插入”。

三、选择折线图,找到折线图单击打开,选择一个折线图点击插入。

四、现在折线图已经插入到表格。

五、单击“保存”保存文档,但是这个文档是不能直接保存的,在弹出的提示对话框,单击“否”即可。

六、现在就可以将文件保存为xlsx格式了,点击保存即可。

参考技术A   CSV格式转换到Excel的方法:
  一、部分简单格式的CSV直接用Excel打开即可正确显示,另存为Excel相应的数据格式,如*.xlsx,或*.xls即可。
  二、对于数据量大的CSV文件,可以先打开一个Excel空白文件(以Office2010为例说明),并按下列步骤操作:
  点击数据-现有连接,弹出现有连接对话框。
  点击浏览更多,弹出选取数据源对话框。
  在左边我的电脑中找到数据存放路径文件夹,并选取CSV数据文件,再点击打开,弹出文本导入向导。
  第1步默认点击下一步,第2步在分隔符号选择逗号后点击下一步。
  第3步,在数据预览中依次选择相应的字段,并在对应的列数据格式选择相应的选项,点击完成后等待导入,另存为需要的格式文件即可。
  三、VBA或其它方式。在大数据量时占不了优势,推荐第二种方式处理,也便于汇总等后续工作。
参考技术B 使用Excel2007以上版本打开csv文件后另存为xlsx格式即可。
或者使用CSV转Excel(xlsx)小工具之类的软件来转换。追问

我这是这样弄的,但是用数据透视表处理时,不可以。显示无数值,我想是不是转换出了问题。

本回答被提问者采纳
参考技术C

一句话,另存为.xlsx就可以了

参考技术D

把csv格式的文件转换为xlsx电子表格文件,可以用这个文件,

it365 CSV格式转换器:

htt=ps://it365.gitlab.io/zh-cn/csv-excel/?d38548

我留的链接有点问题,你先复制链接,粘贴到浏览器地址栏,把前面的htt=ps改为https再进去。

进去就会操作了,点击选择文件按钮,然后会弹窗提示你选择文件,选择你的csv文件,

然后界面上,就可以下载转换后的Excel表格文件了。

截图示例:

csv格式转换效果:

支持批量转换,可以批量把csv转换成Excel、wps表格。

这个it365工具箱网站,里面挺多简单好用的工具,能解决很多问题

将 Excel 工作簿中的所有工作表转换为 csv 格式

【中文标题】将 Excel 工作簿中的所有工作表转换为 csv 格式【英文标题】:Converting all worksheets in an Excel workbook to csv format 【发布时间】:2019-10-26 10:53:42 【问题描述】:

我的 Excel 文档 my.xlsx 有两个名为 Sheet1Sheet2 的工作表。我想使用xlsx2csv 将所有工作表转换为csv 格式。我使用了以下命令:

from xlsx2csv import *
xlsx2csv my.xlsx convert.csv
File "<stdin>", line 1
    xlsx2csv my.xlsx convert.csv
              ^
SyntaxError: invalid syntax

x2c -a my.xlsx my1.csv
  File "<stdin>", line 1
    x2c -a my.xlsx my1.csv
            ^
SyntaxError: invalid syntax

请帮忙。

【问题讨论】:

【参考方案1】:

我之前没有用过xlsx2csv,但我们为什么不试试pandas

您的要求可以这样解决:

import pandas as pd
for sheet in ['Sheet1', 'Sheet2']:
    df = pd.read_excel('my.xlsx', sheetname=sheet)
    df.to_csv(sheet + '_output.csv', index=False)

【讨论】:

感谢@Kelvin 的回答。如果您提供不使用工作表名称的解决方案,将不胜感激。 B/c 我的 xlsx 非常大,使用 Excel 不容易打开,所以不知道手头的工作表名称。谢谢 @MYaseen208 是的,绝对的。您可以执行以下操作:my_file = pd.ExcelFile('my.xlsx'),然后循环遍历所有工作表:for sheet in my_file.sheet_names: df = pd.read_excel('my.xlsx', sheetname=sheet) 因为 pd.read_excel 非常慢。 似乎是自 2018 年以来在pd.read_excel('my.xlsx', sheet_name=sheet) 中的 sheet_name。见typeerror-with-pandas-read-excel。【参考方案2】:

您可以执行以下操作:

import pandas as pd

xls_file = pd.ExcelFile('<path_to_your_excel_file>')
sheet_names = xls_file.sheet_names

for sheet in sheet_names:
    df = xls_file.parse(sheet)

【讨论】:

【参考方案3】:

Xlsx2csv python 实现: 只能使用 sheetid 参数执行 Xlsx2csv。为了获取工作表名称和 ID,使用了 get_sheet_details。 csvfrmxlsx 为父目录下 csv 文件夹中的每个工作表创建 csv 文件。

import pandas as pd
from pathlib import Path


def get_sheet_details(filename):
    import os
    import xmltodict
    import shutil
    import zipfile
    sheets = []
    # Make a temporary directory with the file name
    directory_to_extract_to = (filename.with_suffix(''))
    os.mkdir(directory_to_extract_to)
    # Extract the xlsx file as it is just a zip file
    zip_ref = zipfile.ZipFile(filename, 'r')
    zip_ref.extractall(directory_to_extract_to)
    zip_ref.close()
    # Open the workbook.xml which is very light and only has meta data, get sheets from it
    path_to_workbook = directory_to_extract_to / 'xl' / 'workbook.xml'
    with open(path_to_workbook, 'r') as f:
        xml = f.read()
        dictionary = xmltodict.parse(xml)
        for sheet in dictionary['workbook']['sheets']['sheet']:
            sheet_details = 
                'id': sheet['@sheetId'],  # can be sheetId for some versions
                'name': sheet['@name']  # can be name
            
            sheets.append(sheet_details)
    # Delete the extracted files directory
    shutil.rmtree(directory_to_extract_to)
    return sheets


def csvfrmxlsx(xlsxfl, df):  # create csv files in csv folder on parent directory
    from xlsx2csv import Xlsx2csv
    for index, row in df.iterrows():  
        shnum = row['id']
        shnph = xlsxfl.parent / 'csv' / Path(row['name'] + '.csv')  # path for converted csv file
        Xlsx2csv(str(xlsxfl), outputencoding="utf-8").convert(str(shnph), sheetid=int(shnum))  
    return


pthfnc = 'c:/xlsx/'
wrkfl = 'my.xlsx'
xls_file = Path(pthfnc + wrkfl)
sheetsdic = get_sheet_details(xls_file)  # dictionary with sheet names and ids without opening xlsx file
df = pd.DataFrame.from_dict(sheetsdic)
csvfrmxlsx(xls_file, df)  # df with sheets to be converted

【讨论】:

以上是关于怎么讲csv格式转换为xlsx的主要内容,如果未能解决你的问题,请参考以下文章

csv如何转换为excel?

怎么把xls文件转换成excel文件格式

怎么才能把EXCEL格式的转换成csv格式

怎么把转换成csv格式

csv文件怎么转换为Excel文件

csv转换obj