Relocate one or more (work)sheets
Move (work)sheets around within a (spread)Sheet. The outcome is most predictable for these common and simple use cases:
Reorder and move one or more sheets to the front.
Move a single sheet to a specific (but arbitrary) location.
Move multiple sheets to the back with .after = 100
(.after
can be
any number greater than or equal to the number of sheets).
If your relocation task is more complicated and you are puzzled by the
result, break it into a sequence of simpler calls to
sheet_relocate()
.
sheet_relocate(ss, sheet, .before = if (is.null(.after)) 1, .after = NULL)
ss |
Something that identifies a Google Sheet: its file ID, a URL from
which we can recover the ID, an instance of |
sheet |
Sheet to relocate, in the sense of "worksheet" or "tab". You can identify a sheet by name, with a string, or by position, with a number. You can pass a vector to move multiple sheets at once or even a list, if you need to mix names and positions. |
.before, .after |
Specification of where to locate the sheets(s)
identified by |
The input ss
, as an instance of sheets_id
Constructs a batch of UpdateSheetPropertiesRequest
s (one per sheet):
Other worksheet functions:
sheet_add()
,
sheet_append()
,
sheet_copy()
,
sheet_delete()
,
sheet_properties()
,
sheet_rename()
,
sheet_resize()
,
sheet_write()
if (gs4_has_token()) { sheet_names <- c("alfa", "bravo", "charlie", "delta", "echo", "foxtrot") ss <- gs4_create("sheet-relocate-demo", sheets = sheet_names) sheet_names(ss) # move one sheet, forwards then backwards ss %>% sheet_relocate("echo", .before = "bravo") %>% sheet_names() ss %>% sheet_relocate("echo", .after = "delta") %>% sheet_names() # reorder and move multiple sheets to the front ss %>% sheet_relocate(list("foxtrot", 4)) %>% sheet_names() # put the sheets back in the original order ss %>% sheet_relocate(sheet_names) %>% sheet_names() # reorder and move multiple sheets to the back ss %>% sheet_relocate(c("bravo", "alfa", "echo"), .after = 10) %>% sheet_names() # clean up gs4_find("sheet-relocate-demo") %>% googledrive::drive_trash() }
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.