FpSpreadsheet: Fix INDIRECT formula regarding references to other sheets.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@9356 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
parent
6124d2d047
commit
79c502f0e9
@ -1623,8 +1623,7 @@ begin
|
||||
fs := ExprFormatSettings;
|
||||
try
|
||||
UpdateExprFormatSettings;
|
||||
// ExprFormatSettings := FFormatSettings;
|
||||
// FFormatSettings := ExprFormatSettings;
|
||||
AResult.Worksheet := FWorksheet;
|
||||
FExprNode.GetNodeValue(AResult);
|
||||
finally
|
||||
ExprFormatSettings := fs;
|
||||
|
@ -2335,10 +2335,10 @@ begin
|
||||
begin
|
||||
book := TsWorksheet(Args[0].Worksheet).Workbook;
|
||||
sheet := book.GetWorksheetByIndex(Args[0].ResSheetIndex);
|
||||
Result.Worksheet := sheet;
|
||||
end;
|
||||
addr := sheet.ReadAsText(Args[0].ResRow, Args[0].ResCol);
|
||||
Result := CellResult(addr);
|
||||
Result.Worksheet := sheet;
|
||||
end else
|
||||
if (Args[0].ResultType = rtString) then
|
||||
Result := CellResult(Args[0].ResString);
|
||||
|
@ -1409,7 +1409,12 @@ begin
|
||||
if res.ResSheetName = '' then
|
||||
res.Worksheet := self
|
||||
else
|
||||
res.Worksheet := Workbook.GetWorksheetByName(res.ResSheetName);
|
||||
res.Worksheet := Workbook.GetWorksheetByName(res.ResSheetName);
|
||||
if res.Worksheet = nil then
|
||||
begin
|
||||
WriteErrorValue(lCell, errIllegalRef);
|
||||
exit;
|
||||
end;
|
||||
end else
|
||||
if res.ResSheetName <> '' then
|
||||
res.Worksheet := Workbook.GetWorksheetByName(res.ResSheetname);
|
||||
|
Loading…
Reference in New Issue
Block a user