Changes the number of rows and/or columns in a (work)sheet.

sheet_resize(ss, sheet = NULL, nrow = NULL, ncol = NULL, exact = FALSE)

Arguments

ss

Something that identifies a Google Sheet: its file ID, a URL from which we can recover the ID, an instance of googlesheets4_spreadsheet (returned by gs4_get()), or a dribble, which is how googledrive represents Drive files. Processed through as_sheets_id().

sheet

Sheet to resize, in the sense of "worksheet" or "tab". You can identify a sheet by name, with a string, or by position, with a number.

nrow, ncol

Desired number of rows or columns, respectively. The default of NULL means to leave unchanged.

exact

Logical, indicating whether to impose nrow and ncol exactly or to treat them as lower bounds. If exact = FALSE, sheet_resize() can only add cells. If exact = TRUE, cells can be deleted and their contents are lost.

Value

The input ss, as an instance of sheets_id

See also

Makes an UpdateSheetPropertiesRequest:

  • <# https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/request#UpdateSheetPropertiesRequest>

Other worksheet functions: sheet_add(), sheet_append(), sheet_copy(), sheet_delete(), sheet_properties(), sheet_relocate(), sheet_rename(), sheet_write()

Examples

if (gs4_has_token()) { # create a Sheet with the default initial worksheet (ss <- gs4_create("sheet-resize-demo")) # see (work)sheet dims sheet_properties(ss) # no resize occurs sheet_resize(ss, nrow = 2, ncol = 6) # reduce sheet size sheet_resize(ss, nrow = 5, ncol = 7, exact = TRUE) # add rows sheet_resize(ss, nrow = 7) # add columns sheet_resize(ss, ncol = 10) # add rows and columns sheet_resize(ss, nrow = 9, ncol = 12) # re-inspect (work)sheet dims sheet_properties(ss) # clean up gs4_find("sheet-resize-demo") %>% googledrive::drive_trash() }
#> Creating new Sheet: "sheet-resize-demo"
#> Resizing sheet "Sheet1" in "sheet-resize-demo"
#> No need to change existing dims (1000 x 26)
#> Resizing sheet "Sheet1" in "sheet-resize-demo"
#> Changing dims: (1000 x 26) --> (5 x 7)
#> Resizing sheet "Sheet1" in "sheet-resize-demo"
#> Changing dims: (5 x 7) --> (7 x 7)
#> Resizing sheet "Sheet1" in "sheet-resize-demo"
#> Changing dims: (7 x 7) --> (7 x 10)
#> Resizing sheet "Sheet1" in "sheet-resize-demo"
#> Changing dims: (7 x 10) --> (9 x 12)
#> Files trashed: #> * sheet-resize-demo: 1pUj7fe0EE0LNCVnBX9omBRbxZTZMkKFm1XqYeeXiYCk