2017-12-20 17 views
0

Google 시트를 업데이트하기 위해 python 스크립트를 작성하고 있습니다. 먼저 각 시트의 값을 개별적으로 업데이트하도록 작성했습니다. 분명히, 일괄 적으로 업데이트되도록 작성하는 것이 더 효율적이지만,이를 통해 푸시 된 모든 값은 퍼센트가됩니다. 예를 들어, 1은 100 %가되고, 53.2는 5320 %가됩니다.Google 스프레드 시트 API : 시트에 푸시 된 값은 퍼센트입니다.

여기

샘플 코드는 내가 일괄 업데이트를 적용하기 위해 사용하고 코드입니다. rangelist을 쓰려는 셀의 A1 범위를 포함하는 목록 개체로 처리하고 valueslist을 해당 범위에 쓰여질 값이 들어있는 목록 개체로 처리하십시오. rangelist에는 오작동이 없습니다.

data = [] 
for i in xrange(len(rangelist)): 
    data.append({'range': rangelist[i], values': valueslist[i] 
body = {'valueInputOption': 'USER_ENTERED', 'data': data} 
response = service.spreadsheets().values().batchUpdate(spreadsheetId=ID, body = body) 

것들 내가 시도 :

  • 는 처음에 '='와 문자열로 valueslist 각 값을 캐스팅 RAW
  • 에 valueInputOption 전환
+0

이 메시지는 batchUpdate를 사용하지만 spreadsheets.values.update를 사용하지 않는 경우에만 발생한다고 말합니까? – noogui

+0

예. 그리고 ints/floats 값을 보낼 때만. 웬일인지, 그것을 문자열로 고정하여 고정시켰다. – riders994

답변

0

분명히, 캐스팅 일괄 처리 목록에 값을 넣기 전에 값을 문자열에 적용하면이 문제가 해결됩니다.