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

<!--***********************************************************
 * 
 * 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.
 * 
 ***********************************************************-->




<meta>
      <topic id="textswriterguidenumber_date_convxml" indexer="include" status="PUBLISH">
         <title xml-lang="en-US" id="tit">Turning Number Recognition On or Off in Tables</title>
         <filename>/text/swriter/guide/number_date_conv.xhp</filename>
      </topic>
   </meta>
   <body>
<bookmark xml-lang="en-US" branch="index" id="bm_id3156383"><bookmark_value>numbers; automatic recognition in text tables</bookmark_value>
      <bookmark_value>tables; number recognition</bookmark_value>
      <bookmark_value>dates;formatting automatically in tables</bookmark_value>
      <bookmark_value>recognition;numbers</bookmark_value>
</bookmark><comment>MW added "recognition;"</comment>
<paragraph xml-lang="en-US" id="hd_id3156383" role="heading" level="1" l10n="U" oldref="1"><variable id="number_date_conv"><link href="text/swriter/guide/number_date_conv.xhp" name="Turning Number Recognition On or Off in Tables">Turning Number Recognition On or Off in Tables</link>
</variable></paragraph>
      <paragraph xml-lang="en-US" id="par_id3155179" role="paragraph" l10n="CHG" oldref="2">$[officename] can automatically format dates that you have entered into a table, according to the regional settings specified in your operating system.</paragraph>
      <paragraph xml-lang="en-US" id="par_id3149966" role="paragraph" l10n="U" oldref="15">Do one of the following:</paragraph>
      <list type="unordered">
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3155919" role="listitem" l10n="U" oldref="7">Right-click in a table cell and choose <item type="menuitem">Number recognition</item>. When this feature is on, a check mark is displayed in front of the <item type="menuitem">Number recognition</item> command.</paragraph>
         </listitem>
      </list>
      <list type="unordered">
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3155527" role="listitem" l10n="U" oldref="11">Choose <switchinline select="sys"><caseinline select="MAC">%PRODUCTNAME - Preferences</caseinline><defaultinline>Tools - Options</defaultinline></switchinline> - <item type="menuitem">%PRODUCTNAME Writer - Table</item>, and select or clear the <item type="menuitem">Number recognition</item> check box.</paragraph>
         </listitem>
      </list>
      <embed href="text/shared/00/00000004.xhp#related"/>
      <paragraph xml-lang="en-US" id="par_id3153415" role="paragraph" l10n="U" oldref="14"><switchinline select="sys"><caseinline select="MAC">%PRODUCTNAME - Preferences</caseinline><defaultinline>Tools - Options</defaultinline></switchinline> - <link href="text/shared/optionen/01040500.xhp" name="Text Document - Table">%PRODUCTNAME Writer - Table</link></paragraph>
   </body>
</helpdocument>