Recent

Author Topic: FPSpreadsheet: set a cell to #N/A  (Read 340 times)

upsidasi

  • New Member
  • *
  • Posts: 26
FPSpreadsheet: set a cell to #N/A
« on: June 09, 2022, 01:00:50 pm »
Hi,

What is the correct way to set a cell to #N/A in FPSpreadsheet?

I tried the following options:
  • molWS.WriteNumber(ARow, ACol, Nan);  ==> doesn't work
  • molWS.Writeform WriteCellValueAsString(ARow, ACol, '#N/A');  ==> doesn't work
  • molWS.Writeform WriteText(ARow, ACol, '#N/A');  ==> doesn't work
  • molWS.WriteFormula(ARow, ACol, '#N/A'); ==> it works, but is it the way to go?

Would it be different if I wanted to set a cell to #NUM! or #VALUE! ?
Thanks!

wp

  • Hero Member
  • *****
  • Posts: 10297
Re: FPSpreadsheet: set a cell to #N/A
« Reply #1 on: June 09, 2022, 01:49:00 pm »
Code: Pascal  [Select][+][-]
  1. type
  2.   TsWorksheet = class(...)
  3.     function WriteErrorValue(ARow, ACol: Cardinal; AValue: TsErrorValue): PCell; overload;
  4.     procedure WriteErrorValue(ACell: PCell; AValue: TsErrorValue); overload;
where TsErrorValue is declared in unit fpsTypes
Code: Pascal  [Select][+][-]
  1.   {@@ Error code values
  2.     @value  errOK                  ok, no error
  3.     @value  errEmptyIntersection   A space was used in formulas that reference multiple ranges; a comma separates range references (#NULL!)
  4.     @value  errDivideByZero        Trying to divide by zero (#DIV/0!)
  5.     @value  errWrongType           The wrong type of operand or function argument is used (#VALUE!)
  6.     @value  errIllegalRef          A reference is invalid (#REF!)
  7.     @value  errWrongName           Text in the formula is not recognized (#NAME?)
  8.     @value  errOverflow            A formula has invalid numeric data for the type of operation (#NUM!)
  9.     @value  errArgError            A formula or a function inside a formula cannot find the referenced data (#N/A)
  10.     @value  errFormulaNotSupported This formula is not suppored by fpSpreadsheet (error code not used by Excel and Calc)   }
  11.   TsErrorValue = (
  12.     errOK,                 // no error
  13.     errEmptyIntersection,  // #NULL!
  14.     errDivideByZero,       // #DIV/0!
  15.     errWrongType,          // #VALUE!
  16.     errIllegalRef,         // #REF!
  17.     errWrongName,          // #NAME?
  18.     errOverflow,           // #NUM!
  19.     errArgError,           // #N/A  ( = #NV in German )
  20.     errFormulaNotSupported // No excel error
  21.   );

upsidasi

  • New Member
  • *
  • Posts: 26
Re: FPSpreadsheet: set a cell to #N/A
« Reply #2 on: June 09, 2022, 02:58:32 pm »
Thank you wp!

I clearly need a new pair of glasses!

 

TinyPortal © 2005-2018