XLConnect: ошибка: IllegalArgumentException (Java): индекс листа (-1) находится вне диапазона (нет листов) - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь использовать XLConnect для загрузки в серию книг Excel, которые у меня есть. Использование кода:

BASZ <- loadWorkbook("BASZ.xlsx", create = TRUE)

работает каждый раз и дает мне формальную учебную тетрадь. Однако, когда я go для чтения в листе, я буду использовать sh:

data <- readWorksheet("BASZ", sheet = "Sheet1")

Я всегда получаю одно и то же утверждение: «Ошибка: IllegalArgumentException (Java): индекс листа (-1 ) вне диапазона (нет листов ")

Буквально вчера этот код работал, я новичок в этом и удивляюсь, почему это продолжает происходить. Более того; Неважно, какую рабочую книгу Excel я пытаюсь загрузить, такая же ошибка возникает при попытке прочитать в листе c, с которым я хочу работать. Это должно быть проблема синтаксиса или что-то я делаю неправильно, не так ли? Я не понимаю, почему это сработает, затем я закрываю Studio, а на следующий день не получится ...?

Ответы [ 2 ]

0 голосов
/ 23 апреля 2020

Хорошо, на всякий случай, если кто-то другой совершит ту же ошибку, что и я; вы должны работать в каталоге, в котором находится ваш файл xlsx.

0 голосов
/ 19 апреля 2020

Если вы уже загрузили файл Excel с помощью loadWorkbook(), вы можете использовать функцию readWorksheet() для чтения отдельных листов. Вы должны использовать readWorksheetFromFile(), только если вы ранее не загружали файл. Поэтому ваш код должен выглядеть так:

BASZ <- loadWorkbook("BASZ.xlsx", create = TRUE)
data <- readWorksheet(BASZ, sheet = "Sheet1")

Обратите внимание, что во второй строке первым аргументом является переменная BASZ, а не строка в кавычках.

...