Google sheets 我想用圆圈在谷歌表单上创建一个复选框函数

Google sheets 我想用圆圈在谷歌表单上创建一个复选框函数,google-sheets,google-sheets-formula,Google Sheets,Google Sheets Formula,目前,我只能复制粘贴着色或未着色的圆。我想做一个像谷歌表单中的“插入复选框”这样的函数。我想知道这是否可行,或者我是否应该让它手动完成 问题: 要插入空白圆吗(◯) 通过单击菜单按钮、插入的图形或图像或您拥有的任何内容,可以将其添加到特定的单元格(我猜是当前选定的单元格) 要将插入的空白圆更改为黑色圆(⚫) 无论何时单击这些 解决方案: 使用(单击Tools>scripteditor访问它),可以执行以下操作: 创建一个函数,用空白圆填充所有活动范围(我们称之为“代码> AddiBrAc圆

目前,我只能复制粘贴着色或未着色的圆。我想做一个像谷歌表单中的“插入复选框”这样的函数。我想知道这是否可行,或者我是否应该让它手动完成

问题:
  • 要插入空白圆吗(◯) 通过单击菜单按钮、插入的图形或图像或您拥有的任何内容,可以将其添加到特定的单元格(我猜是当前选定的单元格)
  • 要将插入的空白圆更改为黑色圆(⚫) 无论何时单击这些
解决方案: 使用(单击
Tools>scripteditor
访问它),可以执行以下操作:

  • 创建一个函数,用空白圆填充所有活动范围(我们称之为“代码> AddiBrAc圆< /代码>”)。用于获取所选范围,并且对于每个范围,创建具有相应维度的2D数组,填充空白圆,并用于将空白圆添加到范围内。
  • 创建一个(由打开触发器创建)或调用函数
    addBlankCircles
  • 使用触发器检查所选单元格是否具有该值◯, 并将其更改为⚫ 如果是这样的话
代码段: 问题:
  • 要插入空白圆吗(◯) 通过单击菜单按钮、插入的图形或图像或您拥有的任何内容,可以将其添加到特定的单元格(我猜是当前选定的单元格)
  • 要将插入的空白圆更改为黑色圆(⚫) 无论何时单击这些
解决方案: 使用(单击
Tools>scripteditor
访问它),可以执行以下操作:

  • 创建一个函数,用空白圆填充所有活动范围(我们称之为“代码> AddiBrAc圆< /代码>”)。用于获取所选范围,并且对于每个范围,创建具有相应维度的2D数组,填充空白圆,并用于将空白圆添加到范围内。
  • 创建一个(由打开触发器创建)或调用函数
    addBlankCircles
  • 使用触发器检查所选单元格是否具有该值◯, 并将其更改为⚫ 如果是这样的话
代码段:
不幸的是,我无法从
中想象您的目标,我想创建一个类似“插入复选框”的函数内置于谷歌工作表中的功能。
。我可以问一下它的详细信息吗?这些圆圈当前是如何添加到您的工作表中的?它们是图纸吗?它们是否属于特定的单元格?您能否提供一份电子表格的副本,以便了解这些详细信息?您的意思是想在特定的单元格中插入空白圆圈,以及当一个项目的各个阶段完成时,你能点击它们将它们变成黑色圆圈吗?或者你想让它们根据电子表格中其他地方的值从空白变为黑色吗?@Kirkg13-“你的意思是想在特定的单元格中插入空白圈,然后在项目的各个阶段完成后,单击它们将其变成黑色圈吗?”这就像打印(‘单词’)是的,这就是我想做的。@Iamblichus-它们是当前复制粘贴到工作表中的特殊字符。它们不是图像。不幸的是,我无法从
中想象您的目标。我想创建一个类似“插入复选框”的函数"内置于谷歌工作表中的功能。
。我可以问一下它的详细信息吗?这些圆圈当前是如何添加到您的工作表中的?它们是图纸吗?它们是否属于特定的单元格?您能否提供一份电子表格的副本,以便了解这些详细信息?您的意思是想在特定的单元格中插入空白圆圈,以及当一个项目的各个阶段完成时,你能点击它们将它们变成黑色圆圈吗?或者你想让它们根据电子表格中其他地方的值从空白变为黑色吗?@Kirkg13-“你的意思是想在特定的单元格中插入空白圈,然后在项目的各个阶段完成后,单击它们将其变成黑色圈吗?”这就像打印(‘单词’)是的,这就是我想做的。@Iamblichus-它们是当前复制粘贴到工作表中的特殊字符。它们不是图像。
// Copyright 2020 Google LLC.
// SPDX-License-Identifier: Apache-2.0

function onOpen() { // Add this only in case you want to call your function through a custom menu
  const ui = SpreadsheetApp.getUi();
  ui.createMenu('Add circles')
      .addItem('Add Blank Circles', 'addBlankCircles')
      .addToUi();
}

function addBlankCircles() {
  const rangeList = SpreadsheetApp.getActiveRangeList();
  rangeList.getRanges().forEach(range => {
    const columns = range.getNumColumns();
    const rows = range.getNumRows();
    const values = new Array(rows).fill("").map(() => new Array(columns).fill("◯"));
    range.setValues(values);
  })
}

function onSelectionChange(e) { // Change blank to black
  if (e.range.getValue() === "◯") e.range.setValue("⚫");
}