<?xml version="1.0" encoding="UTF-8"?>


<!--***********************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 ***********************************************************-->


	
<helpdocument version="1.0">
<meta>
<topic id="textscalcguideyear2000xml" indexer="include" status="PUBLISH">
<title id="tit" xml-lang="en-US">19xx/20xx Years</title>
<filename>/text/scalc/guide/year2000.xhp</filename>
</topic>
<history>
<created date="2003-10-31T00:00:00">Sun Microsystems, Inc.</created>
<lastedited date="2004-09-27T11:53:17">converted from old format - fpe</lastedited>
</history>
</meta>
<body>
<bookmark xml-lang="en-US" branch="index" id="bm_id3150439"><bookmark_value>years; 2-digits</bookmark_value>
<bookmark_value>dates; 19xx/20xx</bookmark_value>
</bookmark>
<paragraph role="heading" id="hd_id3150439" xml-lang="en-US" level="1" l10n="U" oldref="18"><variable id="year2000"><link href="text/scalc/guide/year2000.xhp" name="19xx/20xx Years">19xx/20xx Years</link>
</variable></paragraph>
<section id="text">
<paragraph role="paragraph" id="par_id3151116" xml-lang="en-US" l10n="U" oldref="17">The year in a date entry is often entered as two digits. Internally, the year is managed by $[officename] as four digits, so that in the calculation of the difference from 1/1/99 to 1/1/01, the result will correctly be two years.</paragraph>
<list type="unordered">
<listitem>
<paragraph role="listitem" id="par_id3154011" xml-lang="en-US" l10n="U" oldref="19">Under <emph><switchinline select="sys"><caseinline select="MAC">%PRODUCTNAME - Preferences</caseinline><defaultinline>Tools - Options</defaultinline></switchinline> - $[officename] - General</emph> you can define the century that is used when you enter a year with only two digits. The default is 1930 to 2029.</paragraph>
</listitem>
</list>
<paragraph role="paragraph" id="par_id3150010" xml-lang="en-US" l10n="U" oldref="20">This means that if you enter a date of 1/1/30 or higher, it will be treated internally as 1/1/1930 or higher. All lower two-digit years apply to the 20xx century. So, for example, 1/1/20 is converted into 1/1/2020.</paragraph>
</section>
<section id="relatedtopics">
<embed href="text/scalc/guide/calc_date.xhp#calc_date"/>
</section>
</body>
</helpdocument>
