如何使用 python 将公式从一个 gsheet 复制到另一个 gsheet?
How to copy a formula from one gsheet to another using python?
我不确定这是否可行。我有大量电子表格,需要更新公式。如何将公式从一个单元格或一组单元格复制到另一个单元格?我用过 gspread
好像只能做值。我需要 python 基本上为我将公式粘贴到数百张纸上,而无需我单独打开每张纸并复制和粘贴公式。
有人有复制和粘贴公式的通用解决方案吗?这很重要,你会认为有人可以做到。
2018 年 7 月 19 日更新:
操作方法如下:
# Get the formula value from the souce cell:
formula = wks.acell('A2', value_render_option='FORMULA').value
# Update the target cell with formula:
wks.update_acell('B3', formula)
(自 gspread 3.0.0 使用 Sheets API v4 起有效。)
原回答如下:
要访问公式值,您需要使用单元格对象的 input_value
属性。
这是一个例子。 (我跳过了初始化步骤。假设您已经打开了电子表格并且 wks
指的是您 worksheet object。)
# To copy a formula from a single cell (say, A2) to another cell (B3)
# use the input_value property
formula = wks.acell('A2').input_value
# then paste the value to a new cell
wks.update_acell('B3', formula)
对于一组单元格,您需要使用 wks.range()
方法来获取单元格对象。然后你可以像上面的代码一样通过 input_value
获取公式值。请参阅 GitHub 上的 the example。
我不确定这是否可行。我有大量电子表格,需要更新公式。如何将公式从一个单元格或一组单元格复制到另一个单元格?我用过 gspread
好像只能做值。我需要 python 基本上为我将公式粘贴到数百张纸上,而无需我单独打开每张纸并复制和粘贴公式。
有人有复制和粘贴公式的通用解决方案吗?这很重要,你会认为有人可以做到。
2018 年 7 月 19 日更新:
操作方法如下:
# Get the formula value from the souce cell:
formula = wks.acell('A2', value_render_option='FORMULA').value
# Update the target cell with formula:
wks.update_acell('B3', formula)
(自 gspread 3.0.0 使用 Sheets API v4 起有效。)
原回答如下:
要访问公式值,您需要使用单元格对象的 input_value
属性。
这是一个例子。 (我跳过了初始化步骤。假设您已经打开了电子表格并且 wks
指的是您 worksheet object。)
# To copy a formula from a single cell (say, A2) to another cell (B3)
# use the input_value property
formula = wks.acell('A2').input_value
# then paste the value to a new cell
wks.update_acell('B3', formula)
对于一组单元格,您需要使用 wks.range()
方法来获取单元格对象。然后你可以像上面的代码一样通过 input_value
获取公式值。请参阅 GitHub 上的 the example。