public ValueEval evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {switch (args.length) {case 1:return evaluate(srcRowIndex, srcColumnIndex, args[0]);case 0:return new NumberEval(srcColumnIndex+1);}return ErrorEval.VALUE_INVALID;}
public ValueEval Evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0){int rnum;if (arg0 is AreaEval){rnum = ((AreaEval)arg0).FirstColumn;}else if (arg0 is RefEval){rnum = ((RefEval)arg0).Column;}else{return ErrorEval.VALUE_INVALID;}return new NumberEval(rnum + 1);}