2017-08-25 1 views
0

Ich versuche, das Datumsformat für eine Spalte festzulegen, sodass die Datumsangaben wie folgt angezeigt werden: 14-Aug-2017. Dies ist die Art, wie ich es tue:Festlegen des Datumsformats in Google Tabellen mithilfe von API und Python

requests = [ 
    { 
     'repeatCell': 
     { 
      'range': 
      { 
       'startRowIndex': 1, 
       'startColumnIndex': 4, 
       'endColumnIndex': 4 
      }, 
      'cell': 
      { 
       "userEnteredFormat": 
       { 
        "numberFormat": 
        { 
         "type": "DATE", 
         "pattern": "dd-mmm-yyyy" 
        } 
       } 
      }, 
      'fields': 'userEnteredFormat.numberFormat' 
     } 
    } 
] 
body = {"requests": requests} 
response = service.spreadsheets().batchUpdate(spreadsheetId=SHEET, body=body).execute() 

ich alle Zellen in der Spalte E will mit Ausnahme der Kopfzelle aktualisiert werden, damit die Bereichsdefinition. Ich habe http://wescpy.blogspot.co.uk/2016/09/formatting-cells-in-google-sheets-with.html und https://developers.google.com/sheets/api/samples/formatting als Grundlage für diesen Ansatz verwendet.

Die Zellen zeigen jedoch nicht ihren Inhalt mit diesem Format. Sie sind weiterhin im "automatischen" Format und zeigen entweder den numerischen Wert, den ich speichere (die Anzahl der Tage vom 1. Januar 1900) oder (manchmal) das Datum an.

Das Hinzufügen von sheetId zur Bereichsdefinition ändert das Ergebnis nicht.

Ich bekomme keinen Fehler zurück aus dem Service und die Antwort enthält nur die SpreadsheetId und eine leere Antworten Struktur [{}].

Was mache ich falsch?

Antwort

0

Ich habe den Fehler gefunden - die endColumnIndex 5 sein muss, nicht 4.

ich nicht, dass die erste verlinkte Artikel sorgfältig genug gelesen hat!

Verwandte Themen