Scoped, not sheet-wide — a report about A1:D4 that lists a table over H40:M90 is
answering a question nobody asked. The sheet report passes the used range, so at that scope
the filter is a no-op and the two reports stay one code path.
A section with nothing in it is not printed. Most sheets have no named ranges, no hidden
headers and no tables, so the alternative is four headings of None on every report — pure
token cost on the common path, and it buries the sections that do carry something. Absence is
already how these reports say "not here".
Appends the sheet-level objects that intersect
range: named ranges, hidden headers, tables, conditional formats and data validations.