Adds one or more (work)sheets to an existing (spread)Sheet. Note that sheet names must be unique.

sheet_add(ss, sheet = NULL, ..., .before = NULL, .after = NULL)



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().


One or more new sheet names. If unspecified, one new sheet is added and Sheets autogenerates a name of the form "SheetN".


Optional parameters to specify additional properties, common to all of the new sheet(s). Not relevant to most users. Specify fields of the SheetProperties schema in name = value form.

.before, .after

Optional specification of where to put the new sheet(s). Specify, at most, one of .before and .after. Refer to an existing sheet by name (via a string) or by position (via a number). If unspecified, Sheets puts the new sheet(s) at the end.


The input ss, as an instance of sheets_id

See also


if (gs4_has_token()) { ss <- gs4_create("add-sheets-to-me") # the only required argument is the target spreadsheet ss %>% sheet_add() # but you CAN specify sheet name and/or position ss %>% sheet_add("apple", .after = 1) ss %>% sheet_add("banana", .after = "apple") # add multiple sheets at once ss %>% sheet_add(c("coconut", "dragonfruit")) # keeners can even specify additional sheet properties ss %>% sheet_add( sheet = "eggplant", .before = 1, gridProperties = list( rowCount = 3, columnCount = 6, frozenRowCount = 1 ) ) # get an overview of the sheets sheet_properties(ss) # clean up gs4_find("add-sheets-to-me") %>% googledrive::drive_trash() }
#> Creating new Sheet: add-sheets-to-me
#> Adding 1 sheet to add-sheets-to-me
#> New sheet: Sheet2
#> Adding 1 sheet to add-sheets-to-me
#> New sheet: apple
#> Adding 1 sheet to add-sheets-to-me
#> New sheet: banana
#> Adding 2 sheets to add-sheets-to-me
#> New sheets: coconut and dragonfruit
#> Adding 1 sheet to add-sheets-to-me
#> New sheet: eggplant
#> Files trashed: #> * add-sheets-to-me: 1_yt-Rb-wMvFNtqHW4kRL-64YwbFxYYAl0Y6yi2SGoLM