@@ -164,8 +164,8 @@ public Function_EXACT(FunctionBase func1, FunctionBase func2) : base(func1, func
164164
165165 public override Operand Calculate ( AlgorithmEngine work )
166166 {
167- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'EXACT' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
168- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'EXACT' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
167+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'EXACT' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
168+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'EXACT' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
169169 return Operand . Create ( args1 . TextValue == args2 . TextValue ) ;
170170 }
171171 public override void ToString ( StringBuilder stringBuilder , bool addBrackets )
@@ -182,13 +182,13 @@ public Function_FIND(FunctionBase func1, FunctionBase func2, FunctionBase func3)
182182
183183 public override Operand Calculate ( AlgorithmEngine work )
184184 {
185- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Find' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
186- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'Find' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
185+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Find' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
186+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'Find' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
187187 if ( func3 == null ) {
188188 var p = args2 . TextValue . AsSpan ( ) . IndexOf ( args1 . TextValue ) + work . ExcelIndex ;
189189 return Operand . Create ( p ) ;
190190 }
191- var count = func3 . Calculate ( work ) . ToNumber ( "Function 'Find' parameter 3 is error!" ) ; if ( count . IsError ) { return count ; }
191+ var count = func3 . Calculate ( work ) . ToNumber ( "Function 'Find' parameter {0} is error!" , 3 ) ; if ( count . IsError ) { return count ; }
192192 var p2 = args2 . TextValue . AsSpan ( count . IntValue ) . IndexOf ( args1 . TextValue ) + count . IntValue + work . ExcelIndex ;
193193 return Operand . Create ( p2 ) ;
194194 }
@@ -206,11 +206,11 @@ public Function_LEFT(FunctionBase func1, FunctionBase func2) : base(func1, func2
206206
207207 public override Operand Calculate ( AlgorithmEngine work )
208208 {
209- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Left' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
209+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Left' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
210210 if ( func2 == null ) {
211211 return Operand . Create ( args1 . TextValue [ 0 ] . ToString ( ) ) ;
212212 }
213- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Left' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
213+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Left' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
214214 return Operand . Create ( args1 . TextValue . AsSpan ( 0 , args2 . IntValue ) . ToString ( ) ) ;
215215 }
216216 public override void ToString ( StringBuilder stringBuilder , bool addBrackets )
@@ -261,9 +261,9 @@ public Function_MID(FunctionBase func1, FunctionBase func2, FunctionBase func3)
261261
262262 public override Operand Calculate ( AlgorithmEngine work )
263263 {
264- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Mid' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
265- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Mid' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
266- var args3 = func3 . Calculate ( work ) ; if ( args3 . Type != OperandType . NUMBER ) { args3 = args3 . ToNumber ( "Function 'Mid' parameter 3 is error!" ) ; if ( args3 . IsError ) { return args3 ; } }
264+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Mid' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
265+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Mid' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
266+ var args3 = func3 . Calculate ( work ) ; if ( args3 . Type != OperandType . NUMBER ) { args3 = args3 . ToNumber ( "Function 'Mid' parameter {0} is error!" , 3 ) ; if ( args3 . IsError ) { return args3 ; } }
267267 return Operand . Create ( args1 . TextValue . AsSpan ( args2 . IntValue - work . ExcelIndex , args3 . IntValue ) . ToString ( ) ) ;
268268 }
269269 public override void ToString ( StringBuilder stringBuilder , bool addBrackets )
@@ -310,20 +310,20 @@ public Function_REPLACE(FunctionBase func1, FunctionBase func2, FunctionBase fun
310310
311311 public override Operand Calculate ( AlgorithmEngine work )
312312 {
313- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Replace' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
313+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Replace' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
314314 var oldtext = args1 . TextValue ;
315315 if ( func4 == null ) {
316- var args22 = func2 . Calculate ( work ) ; if ( args22 . Type != OperandType . TEXT ) { args22 = args22 . ToText ( "Function 'Replace' parameter 2 is error!" ) ; if ( args22 . IsError ) { return args22 ; } }
317- var args32 = func3 . Calculate ( work ) ; if ( args32 . Type != OperandType . TEXT ) { args32 = args32 . ToText ( "Function 'Replace' parameter 3 is error!" ) ; if ( args32 . IsError ) { return args32 ; } }
316+ var args22 = func2 . Calculate ( work ) ; if ( args22 . Type != OperandType . TEXT ) { args22 = args22 . ToText ( "Function 'Replace' parameter {0} is error!" , 2 ) ; if ( args22 . IsError ) { return args22 ; } }
317+ var args32 = func3 . Calculate ( work ) ; if ( args32 . Type != OperandType . TEXT ) { args32 = args32 . ToText ( "Function 'Replace' parameter {0} is error!" , 3 ) ; if ( args32 . IsError ) { return args32 ; } }
318318
319319 var old = args22 . TextValue ;
320320 var newstr = args32 . TextValue ;
321321 return Operand . Create ( oldtext . Replace ( old , newstr ) ) ;
322322 }
323323
324- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Replace' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
325- var args3 = func3 . Calculate ( work ) ; if ( args3 . Type != OperandType . NUMBER ) { args3 = args3 . ToNumber ( "Function 'Replace' parameter 3 is error!" ) ; if ( args3 . IsError ) { return args3 ; } }
326- var args4 = func4 . Calculate ( work ) ; if ( args4 . Type != OperandType . TEXT ) { args4 = args4 . ToText ( "Function 'Replace' parameter 4 is error!" ) ; if ( args4 . IsError ) { return args4 ; } }
324+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Replace' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
325+ var args3 = func3 . Calculate ( work ) ; if ( args3 . Type != OperandType . NUMBER ) { args3 = args3 . ToNumber ( "Function 'Replace' parameter {0} is error!" , 3 ) ; if ( args3 . IsError ) { return args3 ; } }
326+ var args4 = func4 . Calculate ( work ) ; if ( args4 . Type != OperandType . TEXT ) { args4 = args4 . ToText ( "Function 'Replace' parameter {0} is error!" , 4 ) ; if ( args4 . IsError ) { return args4 ; } }
327327
328328 var start = args2 . IntValue - work . ExcelIndex ;
329329 var length = args3 . IntValue ;
@@ -355,13 +355,13 @@ public Function_REPT(FunctionBase func1, FunctionBase func2) : base(func1, func2
355355
356356 public override Operand Calculate ( AlgorithmEngine work )
357357 {
358- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Rept' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
359- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Rept' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
358+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Rept' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
359+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Rept' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
360360
361361 var newtext = args1 . TextValue ;
362362 var length = args2 . IntValue ;
363363 if ( length < 0 ) {
364- return Operand . Error ( "Function 'Rept' parameter 2 is error!" ) ;
364+ return Operand . Error ( "Function 'Rept' parameter {0} is error!" , 2 ) ;
365365 }
366366 StringBuilder sb = new StringBuilder ( newtext . Length * length ) ;
367367 for ( int i = 0 ; i < length ; i ++ ) {
@@ -387,12 +387,12 @@ public Function_RIGHT(FunctionBase func1, FunctionBase func2) : base(func1, func
387387
388388 public override Operand Calculate ( AlgorithmEngine work )
389389 {
390- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Right' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
390+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Right' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
391391
392392 if ( func2 == null ) {
393393 return Operand . Create ( args1 . TextValue [ args1 . TextValue . Length - 1 ] . ToString ( ) ) ;
394394 }
395- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Right' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
395+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . NUMBER ) { args2 = args2 . ToNumber ( "Function 'Right' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
396396 return Operand . Create ( args1 . TextValue . AsSpan ( args1 . TextValue . Length - args2 . IntValue , args2 . IntValue ) . ToString ( ) ) ;
397397 }
398398 public override void ToString ( StringBuilder stringBuilder , bool addBrackets )
@@ -433,14 +433,14 @@ public Function_SEARCH(FunctionBase func1, FunctionBase func2, FunctionBase func
433433
434434 public override Operand Calculate ( AlgorithmEngine work )
435435 {
436- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Search' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
437- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'Search' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
436+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Search' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
437+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'Search' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
438438
439439 if ( func3 == null ) {
440440 var p = args2 . TextValue . AsSpan ( ) . IndexOf ( args1 . TextValue , StringComparison . OrdinalIgnoreCase ) + work . ExcelIndex ;
441441 return Operand . Create ( p ) ;
442442 }
443- var args3 = func3 . Calculate ( work ) ; if ( args3 . Type != OperandType . NUMBER ) { args3 = args3 . ToNumber ( "Function 'Search' parameter 3 is error!" ) ; if ( args3 . IsError ) { return args3 ; } }
443+ var args3 = func3 . Calculate ( work ) ; if ( args3 . Type != OperandType . NUMBER ) { args3 = args3 . ToNumber ( "Function 'Search' parameter {0} is error!" , 3 ) ; if ( args3 . IsError ) { return args3 ; } }
444444 var p2 = args2 . TextValue . AsSpan ( args3 . IntValue ) . IndexOf ( args1 . TextValue , StringComparison . OrdinalIgnoreCase ) + args3 . IntValue + work . ExcelIndex ;
445445 return Operand . Create ( p2 ) ;
446446 }
@@ -458,13 +458,13 @@ public Function_SUBSTITUTE(FunctionBase func1, FunctionBase func2, FunctionBase
458458
459459 public override Operand Calculate ( AlgorithmEngine work )
460460 {
461- var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Substitute' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; } }
462- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'Substitute' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
463- var args3 = func3 . Calculate ( work ) ; if ( args3 . Type != OperandType . TEXT ) { args3 = args3 . ToText ( "Function 'Substitute' parameter 3 is error!" ) ; if ( args3 . IsError ) { return args3 ; } }
461+ var args1 = func1 . Calculate ( work ) ; if ( args1 . Type != OperandType . TEXT ) { args1 = args1 . ToText ( "Function 'Substitute' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; } }
462+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'Substitute' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
463+ var args3 = func3 . Calculate ( work ) ; if ( args3 . Type != OperandType . TEXT ) { args3 = args3 . ToText ( "Function 'Substitute' parameter {0} is error!" , 3 ) ; if ( args3 . IsError ) { return args3 ; } }
464464 if ( func4 == null ) {
465465 return Operand . Create ( args1 . TextValue . Replace ( args2 . TextValue , args3 . TextValue ) ) ;
466466 }
467- var args4 = func4 . Calculate ( work ) ; if ( args4 . Type != OperandType . NUMBER ) { args4 = args4 . ToNumber ( "Function 'Substitute' parameter 4 is error!" ) ; if ( args4 . IsError ) { return args4 ; } }
467+ var args4 = func4 . Calculate ( work ) ; if ( args4 . Type != OperandType . NUMBER ) { args4 = args4 . ToNumber ( "Function 'Substitute' parameter {0} is error!" , 4 ) ; if ( args4 . IsError ) { return args4 ; } }
468468 string text = args1 . TextValue ;
469469 string oldtext = args2 . TextValue ;
470470 string newtext = args3 . TextValue ;
@@ -533,7 +533,7 @@ public Function_TEXT(FunctionBase func1, FunctionBase func2) : base(func1, func2
533533 public override Operand Calculate ( AlgorithmEngine work )
534534 {
535535 var args1 = func1 . Calculate ( work ) ; if ( args1 . IsError ) { return args1 ; }
536- var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'Text' parameter 2 is error!" ) ; if ( args2 . IsError ) { return args2 ; } }
536+ var args2 = func2 . Calculate ( work ) ; if ( args2 . Type != OperandType . TEXT ) { args2 = args2 . ToText ( "Function 'Text' parameter {0} is error!" , 2 ) ; if ( args2 . IsError ) { return args2 ; } }
537537
538538 if ( args1 . Type == OperandType . TEXT ) {
539539 return args1 ;
@@ -544,7 +544,7 @@ public override Operand Calculate(AlgorithmEngine work)
544544 } else if ( args1 . Type == OperandType . DATE ) {
545545 return Operand . Create ( args1 . DateValue . ToString ( args2 . TextValue ) ) ;
546546 }
547- args1 = args1 . ToText ( "Function 'Text' parameter 1 is error!" ) ; if ( args1 . IsError ) { return args1 ; }
547+ args1 = args1 . ToText ( "Function 'Text' parameter {0} is error!" , 1 ) ; if ( args1 . IsError ) { return args1 ; }
548548 return Operand . Create ( args1 . TextValue . ToString ( ) ) ;
549549 }
550550 public override void ToString ( StringBuilder stringBuilder , bool addBrackets )
0 commit comments