全部,
在我解释这个问题之前,我想提供一些有关我正在与之合作的信息。
标签1可以包含列:日期,州,实际/预测,值
标签2可以包含列:日期,实际/预测,值
标签3将包含:日期,实际/预测,值
我需要从选项卡1和2中提取日期,实际/预测和值列,并以适当的表格格式填充到选项卡3,而不需要列A的任何空白行/中断。我理想地希望通过单击选项卡3上的按钮。我将如何进行此操作?我发现我可以通过以下方式复制一张表格的数据:
function MoveData() {
var ss =
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet1");
var ss3 =
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet3");
ss.getRange("A2:A").copyTo(ss3.getRange("A2"), {contentsOnly:true});
ss.getRange("C2:C").copyTo(ss3.getRange("B2"), {contentsOnly:true});
ss.getrange("D2:D").copyTo(ss3.getrange("C2"), {contentsOnly:true});
}
下一步是从第二张表中填充数据,正好在通过此功能提取的内容之下。
非常感谢任何和所有帮助。
答案 0 :(得分:2)
我认为这会做你所描述的。
function MoveData() {
var ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet1");
var ss2=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet2");
var ss3=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet3");
ss.getRange("A2:A").copyTo(ss3.getRange("A2"), {contentsOnly:true});
ss.getRange("C2:C").copyTo(ss3.getRange("B2"), {contentsOnly:true});
ss.getrange("D2:D").copyTo(ss3.getRange("C2"), {contentsOnly:true});
var nextRow=ss3.getLastRow()+1;//I assume that the above results in
same size columns.
ss2.getRange("A2:A").copyTo(ss3.getRange(nextRow,1),
{contentsOnly:true});
ss2.getRange("B2:B").copyTo(ss3.getRange(nextRow,2),
{contentsOnly:true});
ss2.getrange("C2:C").copyTo(ss3.getRange(nextRow,3),
{contentsOnly:true});
}