【问题标题】:concatenate data in excel using openpyxl in Python在 Python 中使用 openpyxl 连接 excel 中的数据
【发布时间】:2012-08-07 19:33:55
【问题描述】:

又来了, 我设法从 resx 文件 (xml) 中收集特定数据以生成 Excel 文件。 现在,任务是将所有数据连接到此 excel 文件的最低行。

首先打开输入文件进行读(r)和写(w)。

wb = load_workbook('Excel.xlsx')

访问名为“Sheet”的工作表

ws=get_sheet_by_name('Sheet')

所以现在,我需要将一列中所有单元格的数据连接到该列的最后一个空单元格。然后生成这个新的excel文件。

例如, 列名:任意列 第 1 行:ABC 第 2 行:EFG 第3行:HIJ

连接后的最后一行应该是这样的,

第 4 行:ABC EFG HIJ

作为一个 python 初学者,这对我来说似乎是一件相当困难的事情。请帮助改进。

非常感谢。

【问题讨论】:

    标签: python excel openpyxl


    【解决方案1】:

    类似下面的东西应该可以工作......

    max_row = ws.get_highest_row() # find last row of worksheet
    reff = "A1:A" + str(max_row) # build an Excel range covering the data
    values = [cell.value for cell in ws.range(reff)] # collect the data
    ws.cell('A' + str(max_row + 1)).value = ' '.join(values) # write values
    

    这个模块的documentation 非常好。查看并进行实验。

    【讨论】:

    • 非常感谢您的帮助,我只是根据自己的需要进行了一些细微的更改,并且成功了.... nrows= ws2.get_highest_row() ncol = ws2.get_highest_column() # 中的一些代码between.. 对于范围内的列(1,ncol):对于范围内的行(1,nrows):abc.append(ws2.cell(row = row,column=column).value)abc.insert(1,'\ n') concatABC = '\n'.join(abc) ws2.cell(row=(nrows), column=(column)).value = concatABC
    猜你喜欢
    • 2017-02-06
    • 2020-05-24
    • 1970-01-01
    • 1970-01-01
    • 2023-01-20
    • 1970-01-01
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    相关资源
    最近更新 更多