When using the xlnt::streaming_workbook_reader, the streamingcell was previously reused, but was overwritten with information from the new cell. In the example above, reading cell G4 would read a shared_string at index 45. Cell H4 is a cell with no information except its reference, and would previously cause XLNT to return cell H4 with the information from cell G4.
The simple fix I provided resets the cell state, so that the streaming cell always begins with a clean state, just as it happens when not streaming.
Example of XML code from an Excel sheet:
When using the xlnt::streaming_workbook_reader, the streamingcell was previously reused, but was overwritten with information from the new cell. In the example above, reading cell G4 would read a shared_string at index 45. Cell H4 is a cell with no information except its reference, and would previously cause XLNT to return cell H4 with the information from cell G4.
The simple fix I provided resets the cell state, so that the streaming cell always begins with a clean state, just as it happens when not streaming.