<?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="textscalcguideformula_enterxml" indexer="include" status="PUBLISH">
<title id="tit" xml-lang="en-US">Entering Formulas </title>
<filename>/text/scalc/guide/formula_enter.xhp</filename>
</topic>
</meta>
<body>
<bookmark xml-lang="en-US" branch="index" id="bm_id3150868"><bookmark_value>formula bar; input line</bookmark_value>
<bookmark_value>input line in formula bar</bookmark_value>
<bookmark_value>formulas; inputting</bookmark_value>
<bookmark_value>inserting;formulas</bookmark_value>
</bookmark>
<paragraph role="heading" id="hd_id3150868" xml-lang="en-US" level="1" l10n="U" oldref="9"><variable id="formula_enter"><link href="text/scalc/guide/formula_enter.xhp" name="Entering Formulas">Entering Formulas</link>
</variable></paragraph>
<paragraph role="paragraph" id="par_id6848353" xml-lang="en-US" l10n="NEW">You can enter formulas in several ways: using the icons, or by typing on the keyboard, or by a mixture of both methods.</paragraph>
<list type="ordered">
<listitem>
<paragraph role="listitem" id="par_id3145364" xml-lang="en-US" l10n="U" oldref="10">Click the cell in which you want to enter the formula.</paragraph>
</listitem>
<listitem>
<paragraph role="listitem" id="par_id3150012" xml-lang="en-US" l10n="U" oldref="11">Click the <emph>Function</emph> icon on the Formula Bar.</paragraph>
<paragraph role="listitem" id="par_id3156441" xml-lang="en-US" l10n="U" oldref="12">You will now see an equals sign in the input line and you can begin to input the formula.</paragraph>
</listitem>
<listitem>
<paragraph role="listitem" id="par_id3153726" xml-lang="en-US" l10n="U" oldref="3">After entering the required values, press Enter or click <emph>Accept</emph> to insert the result in the active cell. If you want to clear your entry in the input line, press Escape or click <emph>Cancel</emph>.</paragraph>
</listitem>
</list>
<paragraph role="paragraph" id="par_id3147394" xml-lang="en-US" l10n="U" oldref="8">You can also enter the values and the formulas directly into the cells, even if you cannot see an input cursor. Formulas must always begin with an equals sign.</paragraph>
<paragraph role="paragraph" id="par_id4206976" xml-lang="en-US" l10n="NEW">You can also press the + or - key on the numerical keyboard to start a formula. NumLock must be "on". For example, press the following keys in succession:</paragraph>
<paragraph role="code" id="par_id1836909" xml-lang="en-US" l10n="NEW">+ 5 0 - 8 Enter</paragraph>
<paragraph role="paragraph" id="par_id8171330" xml-lang="en-US" l10n="NEW">You see the result <item type="literal">42</item> in the cell. The cell contains the formula <item type="literal">=+50-8</item>.</paragraph>
<paragraph role="note" id="par_id3155764" xml-lang="en-US" l10n="U" oldref="6">If you are editing a formula with references, the references and the associated cells will be highlighted with the same color. You can now resize the reference border using the mouse, and the reference in the formula displayed in the input line also changes. <emph>Show references in color</emph> can be deactivated under <switchinline select="sys"><caseinline select="MAC">%PRODUCTNAME - Preferences</caseinline><defaultinline>Tools - Options</defaultinline></switchinline> - <link href="text/shared/optionen/01060300.xhp" name="Spreadsheet - View">%PRODUCTNAME Calc - View</link>.</paragraph>
<paragraph role="tip" id="par_id3149210" xml-lang="en-US" l10n="U" oldref="7"><variable id="tip">If you would like to view the calculation of individual elements of a formula, select the respective elements and press F9. For example, in the formula =SUM(A1:B12)*SUM(C1:D12) select the section SUM(C1:D12) and press F9 to view the subtotal for this area. 
</variable></paragraph>
<paragraph role="paragraph" id="par_id3150304" xml-lang="en-US" l10n="U" oldref="5">If an error occurs when creating the formula, an <link href="text/scalc/05/02140000.xhp" name="error message">error message</link> appears in the active cell.</paragraph>
<section id="relatedtopics">
<embed href="text/scalc/guide/formulas.xhp#formulas"/>
<paragraph role="paragraph" id="par_id3152993" xml-lang="en-US" l10n="U" oldref="13"><link href="text/scalc/main0206.xhp" name="Formula bar">Formula bar</link></paragraph>
<embed href="text/scalc/guide/cell_enter.xhp#cell_enter"/>
<embed href="text/scalc/guide/multitables.xhp#multitables"/>
<embed href="text/scalc/guide/multi_tables.xhp#multi_tables"/>
</section>
</body>
</helpdocument>
