org.apache.poi.ss.formula.functions

## Class WeekNum

- java.lang.Object
- - org.apache.poi.ss.formula.functions.Fixed2ArgFunction
  - - org.apache.poi.ss.formula.functions.WeekNum

- All Implemented Interfaces:
    FreeRefFunction, Function, Function2Arg

      public class WeekNum
      extends Fixed2ArgFunction
      implements FreeRefFunction

  Implementation for Excel WeekNum() function.

  Syntax:
  WeekNum (Serial_num,Return_type)

  Returns a number that indicates where the week falls numerically within a year.

  Serial_num is a date within the week. Dates should be entered by using the DATE function, or as results of other formulas or functions. For example, use DATE(2008,5,23) for the 23rd day of May, 2008. Problems can occur if dates are entered as text. Return_type is a number that determines on which day the week begins. The default is 1. 1 Week begins on Sunday. Weekdays are numbered 1 through 7. 2 Week begins on Monday. Weekdays are numbered 1 through 7.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static FreeRefFunction` | `instance`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `WeekNum()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `ValueEval` | `evaluate(int srcRowIndex, int srcColumnIndex, ValueEval serialNumVE, ValueEval returnTypeVE)` see `Function.evaluate(ValueEval[], int, int)`
    `ValueEval` | `evaluate(ValueEval[] args, OperationEvaluationContext ec)`
    `int` | `getWeekNo(java.util.Calendar cal, int weekStartOn)`

    - ### Methods inherited from class org.apache.poi.ss.formula.functions.Fixed2ArgFunction

      `evaluate`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### instance

          public static final FreeRefFunction instance

  - ### Constructor Detail

    - #### WeekNum

          public WeekNum()

  - ### Method Detail

    - #### evaluate

          public ValueEval evaluate(int srcRowIndex,
                                    int srcColumnIndex,
                                    ValueEval serialNumVE,
                                    ValueEval returnTypeVE)

      Description copied from interface: `Function2Arg`
      see `Function.evaluate(ValueEval[], int, int)`
      Specified by:
        `evaluate` in interface `Function2Arg`

    - #### getWeekNo

          public int getWeekNo(java.util.Calendar cal,
                               int weekStartOn)

    - #### evaluate

          public ValueEval evaluate(ValueEval[] args,
                                    OperationEvaluationContext ec)

      Specified by:
        `evaluate` in interface `FreeRefFunction`
      Parameters:
        `args` - the pre-evaluated arguments for this function. args is never `null`, nor are any of its elements.
        `ec` - primarily used to identify the source cell containing the formula being evaluated. may also be used to dynamically create reference evals.
      Returns:
        never `null`. Possibly an instance of `ErrorEval` in the case of a specified Excel error (Exceptions are never thrown to represent Excel errors).

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.