如何在一个工作簿中复制工作表并将值仅粘贴到新工作簿中?

梅利穆

我有一个具有很多公式的excel工作簿,当我尝试将工作簿上载到数据库中时,具有iferror公式的单元格会作为空格输入,即使它应该是字符串或数字也是如此。我是python的新手,但我想创建一个将在工作表中读取的python文件,并将其值仅粘贴到新工作簿中。

我试过了:

import openpyxl as xl

wb1 = xl.load_workbook('file1.xlsx')
ws1 = wb1["Sheet 1"]


wb2 = xl.load_workbook('file2.xlsx')
ws2 = wb2.create_sheet(ws1.title)

for row in ws1:
   for cell in row:
        ws2[cell.coordinate].value = cell.value

wb2.save('path')

该代码可以将数据复制到新的工作簿中,但是可以粘贴公式。我只想要这些值。

病毒

根据我之前的评论:

这来自OpenPyxl docs

openpyxl.reader.excel.load_workbook子模块上的声明位置,查看data_only参数:

  • data_only(布尔)–控制带有公式的单元格是否具有公式(默认值)或上一次Excel读取工作表时存储的值

默认值为Formulas您想要的值。因此将其设置为true:

wb = xl.load_workbook('file1.xlsx', data_only=True)

应该帮助:)

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从一个工作簿中复制数据并将值仅粘贴到另一工作簿中,并允许宏仅运行一次?

将多个工作簿中的数据复制并粘贴到另一个工作簿中的工作表中

VBA:如果工作簿中的工作表名称等于从用户窗体中选择的组合框值,则复制该工作表并将其粘贴到另一个工作簿中

在工作簿中创建所选工作表的副本,然后仅将值粘贴到另一个工作簿中,并保留源格式

基于数组复制整列并将其粘贴到同一工作簿中的工作表中

查找列标题,复制数据并将值粘贴到另一个工作簿中

遍历工作簿并将值复制并粘贴到另一个工作簿(VBA、Excel)

VBA宏将工作表复制并粘贴到新工作簿中

VBA 打开多个工作簿、复制特定数据、删除重复行并将信息粘贴到新工作簿中

从打开的工作簿的指定工作表复制数据并将其粘贴到另一个已关闭工作簿的指定工作表

将数据从多个工作簿的最后一行复制并粘贴到另一个工作簿中的工作表

如何运行从活动工作表复制一系列单元格并将其粘贴到新工作簿中的 VBA 代码(只有值和格式,没有公式)?

编辑VBA以将多个工作表作为值粘贴到新工作簿中

如何将值粘贴到另一个工作簿中?

将工作表复制/粘贴到没有该工作表的VBA代码的新工作簿中

存储在数组中的工作表并将它们作为值粘贴到新工作簿中,维护工作表的名称和顺序

根据单元格值将工作簿中的工作表复制并粘贴到不同的工作簿

VBA尝试指定一个新创建的工作簿,而不是activeworkbook(将一些数据粘贴到新工作簿中)

尝试从工作簿A复制静态单元格值并将其粘贴到工作簿B中的动态位置

复制工作簿并粘贴到另一个工作簿 MS Excel 下方

如何复制附加在工作表上的图像并将其粘贴到新工作表中

将工作表复制到另一个工作簿,但工作表也保存在新工作簿中

将文件夹中多个工作簿中的数据复制到一个工作簿中,仅粘贴特殊值

复制工作簿中的列,粘贴到第二个工作簿的第二张表openPyXL中

我正在尝试使用循环将主工作簿中的一个 Excel 工作表中的数据粘贴到最多 30 个其他工作簿中

如何使用python将现有工作表复制并粘贴到现有工作簿中?

从一个工作簿中提取数据并将其粘贴到另一个工作簿中

如何在VBA中的新工作簿中的复制的工作表的名称中添加数字

从一张工作表中复制和转置数据并创建一个新工作表,然后将数据粘贴到新工作表中