首页 > 解决方案 > 如何使用 Python 中的 Pygsheets 库合并 Google 工作表中的单元格

问题描述

在我将数据从数据框导出到 googlesheet 后,它看起来像这样:

来自 googlesheet 的屏幕截图

我希望我可以合并重复的列并得到这种结果:

在此处输入图像描述

这是负责合并单元格的代码部分:

df1 = wks.get_as_df()

df1 = df1.apply(pd.to_numeric, errors='ignore')

df2 = pd.pivot_table(df1[df1.SSPU == 'K01'],index=['SSPU','Color'], 
columns = ["Size"],values=['USFBA',"近30天销量(US)",'US 
Turnover'],fill_value=0, aggfunc=sum)
gc=
pygsheets.authorize(service_file='/Users/dongan/PycharmProjects
/PyProjects/AntonGS.json')

sh = gc.open('BU2_EOL库存处理PY')

wks1 = sh[2]

wks1.set_dataframe(df2,(3,3),copy_index=True)

wks1.merge_cells(start='E3', end='J3', merge_type='MERGE_ALL', sheet=[2])

但它不起作用。它返回一个错误:

AttributeError:“工作表”对象没有属性“merge_cells”

根据 pygsheets 参考它应该有它)

标签: pythondataframegoogle-sheetsgoogle-apipygsheets

解决方案


在 pygsheetsmerge_cells中给出DataRange。所以首先获取要合并为 Datarange 的范围。您可以使用

rng = wks.get_values('A1', 'A5',returnas='range')
rng.merge_cells()

PS。代码未经测试,因此请注意轻微的语法错误。


推荐阅读