The reader is chosen by extension, and binary formats are checked against
their signature (magic bytes) before parsing. A mismatch raises ValueError.
CSV and TSV files are one sheet named after the file (env.csv gives sheet
env).
Hidden and very hidden sheets are scanned; their findings have
hidden=True.
Rows and columns are 1-based, as in the spreadsheet itself.
.xls files expose no formulas or comments through xlrd, so the formula and
comment pathways do not apply to them. Whole numbers are reported without a
trailing .0.
From .xlsx and .xlsm files doormat reads cell values, formulas
(including array formulas), comments, merged ranges and sheet visibility.
It does not read defined names, print settings, pivot caches or
external-link caches, so a malformed part of that kind does not stop a scan.