zth*_*.nc 5 google-sheets google-apps-script
我想在Google工作表中写一个公式,以便可以附加到按钮上,以使1每次单击该单元格中的值都会增加。
这是我在该主题上能找到的最好的。
我试图这样做,但无济于事。我正在使用Windows 7和Chrome。
首先创建一个脚本以增加单元格的值。例如,要将单元格“ A1”加1,可以使用以下脚本:
function increment() {
SpreadsheetApp.getActiveSheet().getRange('A1').setValue(SpreadsheetApp.getActiveSheet().getRange('A1').getValue() + 1);
}
Run Code Online (Sandbox Code Playgroud)
保存此脚本并打开电子表格,然后按照以下步骤操作:
我想根据Marlon 的评论提供一种不同的方法:
如果我们想为不同的行创建多个按钮并且每个按钮修改自己的行怎么办?有没有办法不手动创建这个?
您可以使用onSelectionChange捕获单点击事件和一个按钮的模仿行为。
以下脚本将A在单击同一行的列B中的单元格时增加列中单元格的值。
它还可以即时创建“按钮”文本,但这是可选的,由用户决定。
要使用此解决方案,只需将其复制并粘贴到脚本编辑器并保存更改即可。之后,它将自动用于单击事件。在这个解决方案中,我用作工作Sheet1表名称。
function onSelectionChange(e) {
const as = e.source.getActiveSheet();
const col = e.range.getColumn();
const row = e.range.getRow();
if (as.getName() == 'Sheet1' && col == 2){
const range = as.getRange(row,1);
range.setValue(range.getValue()+1);
e.range.setValue('Button');
}
}
Run Code Online (Sandbox Code Playgroud)
虽然这种方法效果很好,但有两个缺点:
点击和更新之间有一个小的延迟。
选择单元格时会激活触发器。如果一个单元格已经被选中,如果你再次点击它,该功能将不会触发。您必须删除当前选择,然后再次选择它。
小智 5
将以下内容分配给工作表中的绘图,它会将当前选定单元格的值增加 1:
function plusOne() {
var cell = SpreadsheetApp.getActiveSheet().getActiveCell();
var value = cell.getValue() * 1;
cell.setValue(value+1);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18118 次 |
| 最近记录: |