Javascript 正在尝试编写自定义复制/粘贴Google Sheets脚本

Javascript 正在尝试编写自定义复制/粘贴Google Sheets脚本,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我试图创建一个自定义Google Sheets脚本,当用户选择了一个特定的单元格并点击菜单中的自定义函数按钮时,它会复制该单元格中的数据,并使用“仅值”粘贴选项将其重新粘贴到同一单元格中。理想情况下,它也会对所选单元格正下方的下8个单元格执行相同的操作 这可能吗?您的第一步是创建一个菜单,在电子表格中运行您的功能。您可以在此处找到文档和示例代码: 接下来,您可以只使用几个方法来完成此任务(将公式替换为其结果或“仅值”) 您需要getActiveRange方法、getValues方法和setVal

我试图创建一个自定义Google Sheets脚本,当用户选择了一个特定的单元格并点击菜单中的自定义函数按钮时,它会复制该单元格中的数据,并使用“仅值”粘贴选项将其重新粘贴到同一单元格中。理想情况下,它也会对所选单元格正下方的下8个单元格执行相同的操作


这可能吗?

您的第一步是创建一个菜单,在电子表格中运行您的功能。您可以在此处找到文档和示例代码:

接下来,您可以只使用几个方法来完成此任务(将公式替换为其结果或“仅值”)

您需要
getActiveRange
方法、
getValues
方法和
setValues
方法。由于getValues方法不复制公式,因此可以将结果直接设置回活动范围。以下是这些方法的文档:

您可以在包含以下8个单元格的范围内硬编码,但在这个函数中,它只使用高亮显示的单元格范围,这更直观(我认为)和更通用

您的代码可能如下所示:

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('Values Only', 'valuesOnlyFunction')
      .addToUi();
}

function valuesOnlyFunction() {
  var activeRange = SpreadsheetApp.getActiveRange();
  var activeRangeArr = activeRange.getValues();  
  activeRange.setValues(activeRangeArr);
}

您的第一步是创建一个菜单,在电子表格中运行您的函数。您可以在此处找到文档和示例代码:

接下来,您可以只使用几个方法来完成此任务(将公式替换为其结果或“仅值”)

您需要
getActiveRange
方法、
getValues
方法和
setValues
方法。由于getValues方法不复制公式,因此可以将结果直接设置回活动范围。以下是这些方法的文档:

您可以在包含以下8个单元格的范围内硬编码,但在这个函数中,它只使用高亮显示的单元格范围,这更直观(我认为)和更通用

您的代码可能如下所示:

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('Values Only', 'valuesOnlyFunction')
      .addToUi();
}

function valuesOnlyFunction() {
  var activeRange = SpreadsheetApp.getActiveRange();
  var activeRangeArr = activeRange.getValues();  
  activeRange.setValues(activeRangeArr);
}

是的,有可能。您可以创建自定义菜单项,或插入样式类似于按钮的图像,并将脚本与图像关联。您还可以使用一个简单的
onEdit()
函数触发器,该触发器将在用户更新单元格时运行。您的问题属于一般性问题,不符合stackoverflow规则。你应该发布你尝试过的代码。是的,这是可能的。您可以创建自定义菜单项,或插入样式类似于按钮的图像,并将脚本与图像关联。您还可以使用一个简单的
onEdit()
函数触发器,该触发器将在用户更新单元格时运行。您的问题属于一般性问题,不符合stackoverflow规则。你应该发布你尝试过的代码。