通过自定义菜单使用脚本一键刷新单元格中的公式,而不是单独单击单元格以刷新单元格中的公式
Using script via custom menu to one-click refresh formulas in cells rather than clicking into cells individually to refresh formulas in cells
目前,当我将新数据sheet导入模板sheet时,我必须不断点击带有=query()
公式的单个单元格来刷新单元格的公式。 14=]
这应该如何工作是用户每次都复制模板 sheet 并导入新数据sheet,其值将反映在单元格 A2 和 B2 中模板副本的“报告概览”选项卡。
不是单击带有 #REF!
的单个单元格以“激活”/“刷新”这些单元格中的公式,是否有可与自定义菜单一起使用的脚本,以便用户只需单击在菜单按钮上并让 A2 和 B2 等特定单元格一起“刷新”。
模板(Google 张)- https://docs.google.com/spreadsheets/d/11JZMo-cgTCTPx9U6SYwDX7L26kpsQ5YDQH-IuW_3TY8
数据sheet (.xlsx/.xls) - https://docs.google.com/spreadsheets/d/1IprKWqX1OolT1k6x3OClFjMOHd1LIpsc
没有任何脚本...
- 在 A1 中添加标签和复选框
- 在 B2
=iferror(QUERY(indirect("Pets!A2:D11"),"SELECT A WHERE B>5"),refresh!$A)
- 在 C2
=iferror(QUERY(indirect("Pets!A2:D11"),"SELECT C WHERE D>5"),refresh!$A)
要激活所有公式,check/unchek A1 中的方框*
您也可以通过一个简单的脚本来做到这一点
function refresh() {
var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('refresh')
sh.getRange('A1').setValue(!sh.getRange('A1').getValue())
}
编辑:脚本的基本方法是清除单元格,然后re-build通过脚本编写公式
将其添加为脚本:
function onOpen() {
SpreadsheetApp.getUi().createMenu("Refresh Formulae").addItem("Refresh", "refresh").addToUi()
}
function refresh() {
const ss = SpreadsheetApp.getActiveSpreadsheet()
const sheet = ss.getSheetByName("report overview")
const range = sheet.getRange("A2:B2")
range.setFormulas(range.getFormulas())
}
破败:
- 打开时,创建一个菜单项来刷新公式
- 授权后运行,这将re-setA2和B2中的公式
参考文献:
目前,当我将新数据sheet导入模板sheet时,我必须不断点击带有=query()
公式的单个单元格来刷新单元格的公式。 14=]
这应该如何工作是用户每次都复制模板 sheet 并导入新数据sheet,其值将反映在单元格 A2 和 B2 中模板副本的“报告概览”选项卡。
不是单击带有 #REF!
的单个单元格以“激活”/“刷新”这些单元格中的公式,是否有可与自定义菜单一起使用的脚本,以便用户只需单击在菜单按钮上并让 A2 和 B2 等特定单元格一起“刷新”。
模板(Google 张)- https://docs.google.com/spreadsheets/d/11JZMo-cgTCTPx9U6SYwDX7L26kpsQ5YDQH-IuW_3TY8
数据sheet (.xlsx/.xls) - https://docs.google.com/spreadsheets/d/1IprKWqX1OolT1k6x3OClFjMOHd1LIpsc
没有任何脚本...
- 在 A1 中添加标签和复选框
- 在 B2
=iferror(QUERY(indirect("Pets!A2:D11"),"SELECT A WHERE B>5"),refresh!$A)
- 在 C2
=iferror(QUERY(indirect("Pets!A2:D11"),"SELECT C WHERE D>5"),refresh!$A)
要激活所有公式,check/unchek A1 中的方框*
您也可以通过一个简单的脚本来做到这一点
function refresh() {
var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('refresh')
sh.getRange('A1').setValue(!sh.getRange('A1').getValue())
}
编辑:脚本的基本方法是清除单元格,然后re-build通过脚本编写公式
将其添加为脚本:
function onOpen() {
SpreadsheetApp.getUi().createMenu("Refresh Formulae").addItem("Refresh", "refresh").addToUi()
}
function refresh() {
const ss = SpreadsheetApp.getActiveSpreadsheet()
const sheet = ss.getSheetByName("report overview")
const range = sheet.getRange("A2:B2")
range.setFormulas(range.getFormulas())
}
破败:
- 打开时,创建一个菜单项来刷新公式
- 授权后运行,这将re-setA2和B2中的公式