当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R googlesheets4 range_flood 淹没或清除一系列单元格


range_flood() "floods" 具有相同内容的单元格范围。 range_clear() 是一个包装器,用于处理清除单元格值的常见特殊情况。默认情况下,这两个函数也会清除格式,但这可以通过 reformat 指定。

用法

range_flood(ss, sheet = NULL, range = NULL, cell = NULL, reformat = TRUE)

range_clear(ss, sheet = NULL, range = NULL, reformat = TRUE)

参数

ss

识别 Google 表格的内容:

  • 其文件 ID 作为字符串或 drive_id

  • 我们可以从中恢复 id 的 URL

  • one-row dribble ,这就是 googledrive 表示云端硬盘文件的方式

  • googlesheets4_spreadsheet 的实例,这就是 gs4_get() 返回的内容

通过 as_sheets_id() 处理。

sheet

要写入的表,在 "worksheet" 或 "tab" 的意义上。您可以通过名称(使用字符串)或位置(使用数字)来标识工作表。

range

要读取的单元格范围。如果是 NULL ,则读取所有非空单元格。否则,请按照 Sheets A1 notation 中的说明指定 range 或使用 cell-specification 中记录的帮助程序。 Sheets 使用相当标准的电子表格范围表示法,尽管与 Excel 略有不同。有效范围示例: "Sheet1!A1:B2""Sheet1!A:A""Sheet1!1:2""Sheet1!A5:A""A1:B2""Sheet1" 。严格解释,即使范围强制包含前导、尾随或嵌入的空行或列。优先于 skipn_maxsheet 。注意 range 可以是命名范围,如 "sales_data" ,没有任何单元格引用。

cell

用于填充 range 中的单元格的值。如果未指定,默认值 NULL 会导致清除现有值。

reformat

逻辑,指示是否重新格式化受影响的单元格。目前 googlesheets4 不提供对格式的真正支持,因此 reformat = TRUE 实际上意味着编辑的单元格变为未格式化。

输入 ss ,作为 sheets_id 的实例

例子

# create a data frame to use as initial data
df <- gs4_fodder(10)

# create Sheet
ss <- gs4_create("range-flood-demo", sheets = list(df))
#> ✔ Creating new Sheet: range-flood-demo.

# default behavior (`cell = NULL`): clear value and format
range_flood(ss, range = "A1:B3")
#> ✔ Editing range-flood-demo.
#> ✔ Editing sheet Sheet1.

# clear value but preserve format
range_flood(ss, range = "C1:D3", reformat = FALSE)
#> ✔ Editing range-flood-demo.
#> ✔ Editing sheet Sheet1.

# send new value
range_flood(ss, range = "4:5", cell = ";-)")
#> ✔ Editing range-flood-demo.
#> ✔ Editing sheet Sheet1.

# send formatting
# WARNING: use these unexported, internal functions at your own risk!
# This not (yet) officially supported, but it's possible.
blue_background <- googlesheets4:::CellData(
  userEnteredFormat = googlesheets4:::new(
    "CellFormat",
    backgroundColor = googlesheets4:::new(
      "Color",
      red = 159 / 255, green = 183 / 255, blue = 196 / 255
    )
  )
)
range_flood(ss, range = "I:J", cell = blue_background)
#> ✔ Editing range-flood-demo.
#> ✔ Editing sheet Sheet1.

# range_clear() is a shortcut where `cell = NULL` always
range_clear(ss, range = "9:9")
#> ✔ Editing range-flood-demo.
#> ✔ Editing sheet Sheet1.
range_clear(ss, range = "10:10", reformat = FALSE)
#> ✔ Editing range-flood-demo.
#> ✔ Editing sheet Sheet1.

# clean up
gs4_find("range-flood-demo") %>%
  googledrive::drive_trash()
#> File trashed:
#> • range-flood-demo <id: 1tAlVBBMhEj0dWwAUlI_drk99Am3MtiAjQ3RR76IebkA>
源代码:R/range_flood.R

相关用法


注:本文由纯净天空筛选整理自Jennifer Bryan等大神的英文原创作品 Flood or clear a range of cells。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。