Я пытаюсь прочитать файл excel с использованием xlrd в python3, но я не получаю результаты от чтения ячеек, поскольку вижу их в excel ,Чтение кэшированных внешних полей из файла excel, результаты отличные от того, что я вижу в excel
Кажется, что я пытаюсь получить доступ к некоторым внешним источникам, из которых они обновляются, но поскольку этот источник недоступен для меня, excel отображает некоторые кешированные значения. Эти значения находятся в каком-либо другом месте в одном файле excel, поэтому в листе, который вы видите, например, «2.65111» фактическое содержимое ячейки отображается в виде «= BC12» в этой панели редактирования в excel.
Когда я пытаюсь прочитать это через xlrd как:
wb=xlrd.open_workbook("filename.xls",formatting_info=True)
wb.sheet_by_name("sheetname").cell(12,9)
Содержимое ячейки отображается как:
'text:'[XXXX]' (XF:95)'
(где XXXX, скорее всего, имя столбца этого внешнего. csv-файл)
Я бы либо ожидал, что xlrd вернет «2.65111». Я вижу в excel или, по крайней мере, «= BC12» в качестве ссылки на другую ячейку, но я никак не могу использовать «[ XXXXX] "вещь.
Есть ли способ получить xlrd, чтобы показать любое из этих двух?
Я действительно смущен относительно того, где он имеет это "[XXXXX]", и почему это так отличается от того, что я вижу в excel.
PS: Я не могу просто использовать данные из ячейки BC12, так как это должна быть автоматическая обработка файлов, и только «оригинальные» ячейки имеют фиксированную позицию, а эти другие могут быть просто в другой случайной позиции следующий день.
Вы говорите «где XXXX, скорее всего, имя столбца этого внешнего файла .csv» «... WHAT внешний файл csv? Что заставляет вас делать такой вывод? Какова формула в ячейке BC12? Можете ли вы сделать копию файла xls для анализа? –
Что происходит, когда вы делаете: 'wb.sheet_by_name (« имя листа »). Cell (12,9) .value'? – eazar001
@ eazar001: Он возвращает «[XXXX]» – PlasmaHH