Search code examples
apicellspreadsheet

Getting a merged cell width on Google Spreadsheet API


I'm using the Google Spreadsheet API to convert a document containing workers shifts into event calendars. The only problem is that shifts are represented by merged cells according to days and hours (with days and hours as rows and different work slots as cols), and when I read a certain cell, which is merged and spans over 6 cells, I cannot get the cells certain width or its merged area.

For example: a busy cat

If I try to get the values between (4C:4E) I will get "Bob, , ," and not "bob,bob,bob", and I cannot even find a way to know how many cells "bob" take.

Do you guys know how can I know how many cells the merged one spread to? Or at least it's total width.

Thanks in advance!


Solution

  • It's not possible via spreadsheet API. I was looking for same. Google admits the same in their documentation.

    The literal value of the cell element is the calculated value of the cell, without formatting applied. If the cell contains a formula, the calculated value is given here. The Spreadsheets API has no concept of formatting, and thus cannot manipulate formatting of cells.

    Related question: Set cell format in Google Sheets spreadsheet using its API & Python

    One alternate way can be to download the doc in excel format programmatically. It will contain formatting information. Then using excel API to extract the info.