python excel数据框_python – 熊猫数据框到Excel表

根据您的上述需求,您将需要使用

Python(导出熊猫数据框)和VBA(删除现有工作表内容并复制/粘贴外部数据).

使用Python:使用to_csv或to_excel方法.我推荐使用更大的数据集更好的to_csv方法.

# DF TO EXCEL

from pandas import ExcelWriter

writer = ExcelWriter('PythonExport.xlsx')

yourdf.to_excel(writer,'Sheet5')

writer.save()

# DF TO CSV

yourdf.to_csv('PythonExport.csv', sep=',')

使用VBA:copy和paste源到目的地范围.

幸运的是,在VBA中,您可以使用Shell调用Python脚本(假设您的操作系统是Windows).

Sub DataFrameImport()

'RUN PYTHON TO EXPORT DATA FRAME

Shell "C:\pathTo\python.exe fullpathOfPythonScript.py", vbNormalFocus

'CLEAR EXISTING CONTENT

ThisWorkbook.Worksheets(5).Cells.Clear

'COPY AND PASTE TO WORKBOOK

Workbooks("PythonExport").Worksheets(1).Cells.Copy

ThisWorkbook.Worksheets(5).Range("A1").Select

ThisWorkbook.Worksheets(5).Paste

End Sub

或者,您可以反之亦然:使用Python运行一个宏(ClearExistingContent).确保您的Excel文件是一个启用宏(.xlsm)的文件,其中保存的宏仅删除Sheet 5内容.注意:无法使用csv文件保存宏.

import os

import win32com.client

from pandas import ExcelWriter

if os.path.exists("C:\Full Location\To\excelsheet.xlsm"):

xlApp=win32com.client.Dispatch("Excel.Application")

wb = xlApp.Workbooks.Open(Filename="C:\Full Location\To\excelsheet.xlsm")

# MACRO TO CLEAR SHEET 5 CONTENT

xlApp.Run("ClearExistingContent")

wb.Save()

xlApp.Quit()

del xl

# WRITE IN DATA FRAME TO SHEET 5

writer = ExcelWriter('C:\Full Location\To\excelsheet.xlsm')

yourdf.to_excel(writer,'Sheet5')

writer.save()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值