1

Im v3 API ich etwas tun könnte wie: Wie erhalte ich Zellendaten aus der Google Sheets V4-API?

String listFeedUrl = (new URI(worksheet.getListFeedUrl().toString())).toURL(); 
ListQuery lq = new ListQuery(listFeedUrl); 

lq.setOrderBy("column:name"); 
lq.setReverse(false); 

ListFeed lf = spreadsheetService.query(lq, ListFeed.class); 

In v4 bin ich kein Äquivalent zu sehen. Was ist der empfohlene Weg, sortierte Zellendaten zu bekommen? Ist meine einzige Wahl, es zu sortieren, sobald es zurückgegeben wird?

Antwort

1

In der Tat, dies zu tun, aber die Idee ist es, eine Anfrage auf dem Blatt ausführen, um explizit die Spalten zu bestellen. Ich habe es geschafft, es so zu tun:

BatchUpdateSpreadsheetRequest busReq = new BatchUpdateSpreadsheetRequest(); 
SortSpec ss = new SortSpec(); 
// ordering ASCENDING or DESCENDING 
ss.setSortOrder("DESCENDING"); 
// the column number starting from 0 
ss.setDimensionIndex(1); 
SortRangeRequest srr = new SortRangeRequest(); 
srr.setSortSpecs(Arrays.asList(ss)); 
Request req = new Request(); 
req.setSortRange(srr); 
busReq.setRequests(Arrays.asList(req)); 
// mService is a instance of com.google.api.services.sheets.v4.Sheets 
this.mService.spreadsheets().batchUpdate(spreadsheetId, busReq).execute(); 
+0

Auch können Sie diese URL verwenden, um die Anfrage Konstruktion zu testen: [developers.google.com/apis-explorer](https://developers.google.com/ apis-explorer/# p/sheets/v4/sheets.spreadsheets.batchUpdate) – k4cy

1

Es scheint die Antwort ist NO. Siehe here

Order by column is not supported for reads, but it is possible to sort the data in the sheet (using a SortRange) request and then read it