如何解决所选范围?

时间:2019-04-02 13:14:35

标签: javascript google-apps-script

我是Google Apps脚本的新手,我正在尝试在Google电子表格中创建一个功能,该功能可将所选范围向下移动一行,并在每月的第一天重复执行。 经过一番研究,我输入了一些代码。.我不知道我是否正确。

function rowdown(input)
var sheet = SpreadsheetApp.getActiveSheet();
sheet.getActiveRange().copyTo(..., spreadsheetApp.CopyPasteType.PASTE_NO_BORDERS)

我应该如何使用“输入”作为粘贴目标?

我想知道如何正确使用所选范围。

1 个答案:

答案 0 :(得分:0)

这组功能将创建一个输入对话框,并允许您通过无模式对话框将数据输入到活动工作表中您选择的单元格中。它还可以让您继续将数据输入到您第一次选择的单元格下面的下一个单元格中。

function getMyInput() {
  var html='<style>input[type=button]{margin:5px;}#pnxt,#cls{display:none;}</style><br />Give Me Some Input: <input type="text" id="txt1" /><br />Select a cell to put it into and then click Paste Button:<br /><input type="button" value="Paste" onClick="pasteItDude();" /><br /><input id="pnxt" type="button" value="Paste Into Next Cell Below" onClick="pasteNext();" />';
  html+='<br /><input id="cls" type="button" value="Close" onClick="google.script.host.close();" />';
  html+='<script>function pasteItDude(){var val=document.getElementById(\"txt1\").value;google.script.run.withSuccessHandler(function(){document.getElementById(\"pnxt\").style.display=\"inline\";document.getElementById(\"cls\").style.display=\"inline\";}).pasteItMan(val);}';
  html+='function pasteNext(){var val=document.getElementById(\"txt1\").value;google.script.run.pasteNext(val);}console.log(\"My Code\");</script>';
  var userInterface=HtmlService.createHtmlOutput(html);
  SpreadsheetApp.getUi().showModelessDialog(userInterface, 'Give me some data.');
}

function pasteItMan(txt) {
  var ss=SpreadsheetApp.getActive();
  ss.getActiveCell().setValue(txt);
  return;
}

function pasteNext(txt) {
  var ss=SpreadsheetApp.getActive();
  ss.getActiveCell().offset(1,0).activate();
  ss.getActiveCell().setValue(txt);
  return;
}

这不是创建对话框的最简单方法,但用途广泛。有关更多信息,请参见一些参考。