创建一个<Link />
文件,其中包含三张名为“Test 1”,“S&amp; P500 TR”和“SP500 TR”的表格。在每张表中放入一些随机内容,并将其另存为“Book1.xlsx”。
执行命令
.xlsx
现在尝试:
> a <- getSheetNames("Book1.xlsx")
> a
[1] "Test 1" "S&P500 TR" "SP500 TR"
答案 0 :(得分:0)
首先检查您是否实际输入了名称S&P500 TR
,而不是使用会更改任何内容的a[2]
。
或者,您可以使用readxl
包进行导入;
library(readxl)
X1 <- read_excel("C:/1.xls", sheet = "S&P500 TR")
这是我的电子表格,它是导入后的结果;
head(X1)
# A tibble: 6 × 4
# Year Month Community ` Average Daily`
# <dbl> <chr> <chr> <dbl>
# 1 2016 Jan Arlington 5.35
# 2 2016 Jan Ashland 1.26
# 3 2016 Jan Bedford 2.62
# 4 2016 Jan Belmont 3.03
# 5 2016 Jan Boston (BWSC) 84.89
# 6 2016 Jan Braintree 8.16
答案 1 :(得分:0)
我遇到了同样的问题,但找到了解决方法。首先使用read.xlsx()加载工作簿。然后重命名有问题的工作表以避免使用&符号。要修复示例中的代码:
wb = read.xlsx("Book1.xlsx")
renameWorksheet(wb, "S&P500 TR", "NEW NAME")
output = read.xlsx(wb, "NEW NAME")
希望这有帮助!
答案 2 :(得分:0)
首先加载工作簿,然后使用which
和grepl
函数返回包含工作表名称的工作表编号(以这种方式完成时可以包含'&amp;'字符)。这似乎在我目前正在开发的应用程序中运行良好。
下面给出了一个(不完整的)示例,该示例应该很容易修改为您的上下文。在我的情况下,'i'是一个文件名(循环遍历许多文件)。 “玩具”代码在这里:
wb <- loadWorkbook(file = i)
which( grepl("CAPEX & Depreciation", names(wb)) )