BIM : Preserve Spreadsheet structure (#26736)
Signed-off-by: Yash Suthar <yashsuthar983@gmail.com>
This commit is contained in:
@@ -687,7 +687,15 @@ class _ArchReport:
|
||||
f"Report '{getattr(obj, 'Label', '')}': No target spreadsheet found.\n"
|
||||
)
|
||||
return
|
||||
sp.clearAll()
|
||||
# clear all the content of the spreadsheet
|
||||
used_range = sp.getUsedRange()
|
||||
if used_range:
|
||||
sp.clear(f"{used_range[0]}:{used_range[1]}")
|
||||
else:
|
||||
FreeCAD.Console.PrintError(
|
||||
f"Report '{getattr(obj, 'Label', '')}': Invalid cell address found, clearing spreadsheet.\n"
|
||||
)
|
||||
sp.clearAll()
|
||||
|
||||
# Reset the row counter for a new report build.
|
||||
self.spreadsheet_current_row = 1
|
||||
|
||||
@@ -1102,6 +1102,9 @@ PyObject* SheetPy::getUsedRange(PyObject* args)
|
||||
return nullptr;
|
||||
}
|
||||
auto usedRange = getSheetPtr()->getCells()->getUsedRange();
|
||||
if (!std::get<0>(usedRange).isValid()) {
|
||||
Py_Return;
|
||||
}
|
||||
Py::Tuple pyTuple(2);
|
||||
pyTuple[0] = Py::String(std::get<0>(usedRange).toString());
|
||||
pyTuple[1] = Py::String(std::get<1>(usedRange).toString());
|
||||
|
||||
Reference in New Issue
Block a user