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

使用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分别表示行、列。

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

报告相同问题?

悬赏问题

  • ¥15 关于#wireshark#的问题:并且能够给数据做标注,如这个流量是在看视频或者是在转账
  • ¥90 请问,这个视频播放软件的名称,用过的朋友请给答案,上方..avi是啥意思?是看短剧还是播放本地视频?
  • ¥15 运筹优化,gurobi,python
  • ¥15 基于python的电影系统推荐
  • ¥20 springmvc重定向和返回json
  • ¥15 数学建模——参会安排怎么做
  • ¥15 电脑键盘实现触摸功能
  • ¥25 matlab无法将表达式转换为双数组怎么解决?
  • ¥15 单片机汇编语言相关程序
  • ¥20 家用射频美容仪技术规格