JT Tomato� 2019-09-01 23:00 采纳率: 20%
浏览 6009
已采纳

使用Python 将某个excel 中的一列 写入 另一个excel 中的某一列

嗨 朋友们:

我还在编写这个程序中...然而遇到了一些新的麻烦...

想要实现的功能: 将某个excel 中的一列 写入 另一个excel 中的一列.

当前我已经可以通过自定义的 get infor() 函数 提取某一excel 表中的数据 并存储在列表 (L=[ ] )中,
图片说明

并通过open excel cost () 函数 将这些信息插入到目标excel之中了。

然而,我发现自己所使用的 插入excel 的方法只能针对 某个 特定的 单元格 (如我代码之中的 "D2" 单元格)。 我想对这个open excel cost () 函数 代码进行调整,使得它可以根据get infor() 函数中的列表返回结果 对目标excel中的某一列 批量赋值。

请问应该如何实现呢?

我的代码如下, 感谢大佬们的辛苦指正

import openpyxl
import xlrd

def get_infor():
    book = xlrd.open_workbook('C:/Users/lenovo/Desktop/模板.xlsx')
    sheet = book.sheet_by_name('WRT模板IN')
    L =[]
    for i in range (2,sheet.nrows):          # i 从第四列开始
        PN = str(sheet.cell(i,5).value)
        Cost_USD = str(sheet.cell(i, 9).value)
        L.append((PN,Cost_USD))
    #t=tuple(L)
    return L
    #print(L)

t1= get_infor()
#print(t1)
#
# sh = t1[0][0]

# print(sh)
#
def Open_excel_cost():
    workbook = openpyxl.load_workbook('C:/Users/lenovo/Desktop/文档模板/IN/Cost_IN.xlsx')
    sheet = workbook.worksheets[0]   # 第一个页签
    sheet['D2'] = t1[0][1]
    #sheet['A1'] = t1[1][2]
    workbook.save('C:/Users/lenovo/Desktop/文档模板/IN/Cost_IN.xlsx')  # 此步骤要保存才行的, 否则是不会在excel中显示的 2019.8.24
    print(sheet['D2'].value)
    print(sheet.title)

Open_excel_cost()

  • 写回答

1条回答 默认 最新

  • soar3033 2019-09-05 09:09
    关注

    把sheet['D2'].value改成sheet.cell(1,3).value这种形式。cell(i,j)的i、j分别表示行、列。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 射频功率问题,解答者有酬谢!
  • ¥80 构建降雨和积水的预测模型
  • ¥15 #Qt Transform setTransform()在鼠标拖动移动视角是一致在原地不动,无法变换视角(细微观察似乎视图有在原地抖动),无法变换视角(细微观察似乎视图有在原地抖动)
  • ¥50 如何利用无人机拍摄的数码照片测量鸟卵的长短径
  • ¥100 github贡献者给与奖励
  • ¥15 使用DS18B20+ESP8266获取温度数据返回-127.00
  • ¥15 odbc代码新增sqlserver数据源
  • ¥15 求一个USB指纹识别的驱动
  • ¥15 wps中工作表与工作表之间怎么汇总信息?
  • ¥50 请教Windows server 2012 R2的DCOM配置问题