Fix data validations conversion

This commit is contained in:
Viktor Andreev
2025-11-06 15:00:38 +06:00
parent 919d117a1f
commit d9be0df8fb
3 changed files with 13 additions and 7 deletions

View File

@ -94,7 +94,9 @@ void DVParsedFormula::save(CFRecord& record, bool bSave)
{
cce = 0;
_UINT32 cb = 0;
record << cce << cb;
record << cce;
if(record.getGlobalWorkbookInfo()->Version == 0x0800)
record << cb;
}
}

View File

@ -179,6 +179,10 @@ Ptg* PtgList::toArea()
}
PtgArea* listArea = new PtgArea(0x25);
listArea->area = tableRef;
listArea->area.rowFirstRelative = false;
listArea->area.rowLastRelative = false;
listArea->area.columnFirstRelative = false;
listArea->area.columnLastRelative = false;
Ptg* ptr = listArea;
return ptr;

View File

@ -474,12 +474,12 @@ const bool SyntaxPtg::extract_PtgList(std::wstring::const_iterator& first, std::
ptgList.invalid = false;
ptgList.nonresident = false;
ptgList.ixti = ixti;
static boost::wregex reg_inside_table1(L"\\[#?[\\s\\w[:Unicode:]\\d.]+\\]");
static boost::wregex reg_inside_table2(L"\\[#[\\w[:Unicode:]][\\s\\w[:Unicode:]\\d.]*\\],\\[#[\\w[:Unicode:]][[:Unicode:]\\s\\w\\d.]*\\]");
static boost::wregex reg_inside_table3(L"^[,;:]?\\[#?[[:Unicode:]\\s\\w\\d.]+\\]");
static boost::wregex reg_inside_table4(L"\\[#?(\\[.+?\\]\\,)?(\\[.+?\\])?.+?\\]");
static boost::wregex reg_inside_table5(L"^[,;:]?\\[.+?\\]");
static boost::wregex reg_inside_table6(L"\\[\\]");
boost::wregex reg_inside_table1(L"\\[#?[\\s\\w[:Unicode:]\\d.]+\\]");
boost::wregex reg_inside_table2(L"\\[#[\\w[:Unicode:]][\\s\\w[:Unicode:]\\d.]*\\],\\[#[\\w[:Unicode:]][[:Unicode:]\\s\\w\\d.]*\\]");
boost::wregex reg_inside_table3(L"^[,;:]?\\[#?[[:Unicode:]\\s\\w\\d.]+\\]");
boost::wregex reg_inside_table4(L"\\[#?(\\[.+?\\]\\,)?(\\[.+?\\])?.+?\\]");
boost::wregex reg_inside_table5(L"^[,;:]?\\[.+?\\]");
boost::wregex reg_inside_table6(L"\\[\\]");
first = results[1].second;