Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java GoogleSheetsAPI-如何在表格顶部添加新行?(Android)_Java_Android_Google Sheets Api - Fatal编程技术网

Java GoogleSheetsAPI-如何在表格顶部添加新行?(Android)

Java GoogleSheetsAPI-如何在表格顶部添加新行?(Android),java,android,google-sheets-api,Java,Android,Google Sheets Api,在我的Android应用程序中,我想在google sheets表的顶部添加一行(包含新的食品订单信息)。从文档中可以看出,我似乎只能追加到表的底部。但我确实需要从顶部追加新行,我怀疑这是不可能的。 我能够使用以下代码将行追加到底部: String ORDER_SHEET_ID = "<my speardsheet id here>"; String ORDERS_RANGE_DINING = "DiningOrders!C5:I"; //...

在我的Android应用程序中,我想在google sheets表的顶部添加一行(包含新的食品订单信息)。从文档中可以看出,我似乎只能追加到表的底部。但我确实需要从顶部追加新行,我怀疑这是不可能的。
我能够使用以下代码将行追加到底部:

String ORDER_SHEET_ID = "<my speardsheet id here>";
String ORDERS_RANGE_DINING = "DiningOrders!C5:I";
//...                       
this.mService.spreadsheets().values().append(ORDER_SHEET_ID,ORDERS_RANGE_DINING, body)
.setValueInputOption("RAW").setInsertDataOption("INSERT_ROWS").execute();
String ORDER_SHEET_ID=”“;
String ORDERS\u RANGE\u dinging=“DiningOrders!C5:I”;
//...                       
this.mService.spreadsheets().values().append(订单工作表ID、订单范围、正文)
.setValueInputOption(“原始”).setInsertDataOption(“插入行”).execute();
是否可以将该行附加到表的顶部?怎么用?谢谢

你可以参考这个

如果您需要在顶部(第一行)添加新行并复制 从第一行开始复制公式,然后需要复制公式 使用
getFormulas()
setFormulas()
函数。你可以 如果电子表格有标题,请将第一行的值更改为2 比如说

function addFirstRow() {
    var firstRow = 1;
    var sh = ss.getActiveSheet();
    var lCol = sh.getLastColumn();
    var range = sh.getRange(firstRow, 1, 1, lCol);
    var formulas = range.getFormulas();
    sh.insertRowsAfter(1, 1);
    newRange = sh.getRange(firstRow, 1, 1, lCol);
    newRange.setFormulas(formulas);
}
您也可以检查此线程:

您可以参考此线程

如果您需要在顶部(第一行)添加新行并复制 从第一行开始复制公式,然后需要复制公式 使用
getFormulas()
setFormulas()
函数。你可以 如果电子表格有标题,请将第一行的值更改为2 比如说

function addFirstRow() {
    var firstRow = 1;
    var sh = ss.getActiveSheet();
    var lCol = sh.getLastColumn();
    var range = sh.getRange(firstRow, 1, 1, lCol);
    var formulas = range.getFormulas();
    sh.insertRowsAfter(1, 1);
    newRange = sh.getRange(firstRow, 1, 1, lCol);
    newRange.setFormulas(formulas);
}

您也可以检查此线程:

这是我用来插入新行的内容。它创建行并使用粘贴命令设置数据,这样我就可以在一次HTTP往返中完成所有操作。或者,如果需要,可以使用第二个请求更新数据。我不确定粘贴命令是否可以插入行,但这是可行的

InsertDimensionRequest insertRow = new InsertDimensionRequest();
insertRow.setRange(new DimensionRange().setDimension("ROWS").setStartIndex(0).setEndIndex(1).setSheetId(sheetId));
PasteDataRequest data = new PasteDataRequest().setData("Data").setDelimiter("\t")
        .setCoordinate(new GridCoordinate().setColumnIndex(0).setRowIndex(0).setSheetId(sheetId));

BatchUpdateSpreadsheetRequest r = new BatchUpdateSpreadsheetRequest().setRequests(Arrays.asList(
        new Request().setInsertDimension(insertRow),
        new Request().setPasteData(data)
        ));
BatchUpdateSpreadsheetResponse response = this.mService.spreadsheets().batchUpdate(SHEET_ID, r).execute();

这是我用来插入新行的。它创建行并使用粘贴命令设置数据,这样我就可以在一次HTTP往返中完成所有操作。或者,如果需要,可以使用第二个请求更新数据。我不确定粘贴命令是否可以插入行,但这是可行的

InsertDimensionRequest insertRow = new InsertDimensionRequest();
insertRow.setRange(new DimensionRange().setDimension("ROWS").setStartIndex(0).setEndIndex(1).setSheetId(sheetId));
PasteDataRequest data = new PasteDataRequest().setData("Data").setDelimiter("\t")
        .setCoordinate(new GridCoordinate().setColumnIndex(0).setRowIndex(0).setSheetId(sheetId));

BatchUpdateSpreadsheetRequest r = new BatchUpdateSpreadsheetRequest().setRequests(Arrays.asList(
        new Request().setInsertDimension(insertRow),
        new Request().setPasteData(data)
        ));
BatchUpdateSpreadsheetResponse response = this.mService.spreadsheets().batchUpdate(SHEET_ID, r).execute();