首页 > 解决方案 > 在 Google 表格中,如何编写脚本将绘图移动到工作表上的特定位置?

问题描述

我有一张带有绘图即形状的 Google 表格。什么脚本会将形状移动到工作表上的指定位置?

这是一个示例的链接,我想单击蓝色矩形并让脚本移动绿色矩形以覆盖单元格 A1。

https://drive.google.com/open?id=1eFCwDiY90ZM5SIMa6C0rSdhG_oC-SWgsk8vAvjIR34s

这是我在 Google 中的第一个脚本,我找不到选择绘图的方法。

标签: google-apps-scriptgoogle-sheetsgoogle-sheets-macros

解决方案


我相信你的目标如下。

  • 当单击蓝色矩形时,您希望将绘图(即绿色矩形)移动到单元格“A1”。

为此,这个答案怎么样?

用法:

1.设置函数名称。

首先,请将函数名设置myFunction为“蓝色矩形”。这样,当单击蓝色矩形时,myFunction就会运行。

2. 示例脚本。

function myFunction() {
  // 1. Retrieve sheet.
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");

  // 2. Retrieve "the green rectangle".
  const drawing = sheet.getDrawings().filter(e => e.getOnAction() != "myFunction")[0];

  // 3. Move "the green rectangle".
  drawing.setPosition(1, 1, 0, 0);
}
  • 在这种情况下,蓝色矩形的函数名称为myFunction。所以使用这个,绿色矩形被检索。
  • 要运行此脚本,请单击myFunction设置的蓝色矩形。这样,绿色矩形移动到单元格“A1”。

笔记:

  • 这是一个示例脚本。所以请根据您的实际情况进行修改。

参考:


推荐阅读