1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
<?xml version="1.0" encoding="UTF-8"?>
<!--
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* 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 .
-->
<helpdocument version="1.0">
<meta>
<topic id="textscalc05empty_cellsxml" indexer="include" status="PUBLISH">
<title id="tit" xml-lang="en-US">Handling of Empty Cells</title>
<filename>/text/scalc/05/empty_cells.xhp</filename>
</topic>
</meta>
<body>
<bookmark xml-lang="en-US" branch="index" id="bm_id3146799"><bookmark_value>empty cells;handling of</bookmark_value>
</bookmark><comment>i86303</comment><paragraph role="heading" id="hd_id1502121" xml-lang="en-US" level="1"><variable id="empty_cells"><link href="text/scalc/05/empty_cells.xhp">Handling of Empty Cells</link>
</variable></paragraph>
<paragraph role="paragraph" id="par_id8266853" xml-lang="en-US">In older versions of the software, empty cells were forced to numeric 0 in some contexts and to empty string in others, except in direct comparison where =A1=0 and =A1="" both resulted in TRUE if A1 was empty. Emptiness now is inherited until used, so both =VLOOKUP(...)=0 and =VLOOKUP(...)="" give TRUE if the lookup resulted in an empty cell being returned. </paragraph>
<paragraph role="paragraph" id="par_id2733542" xml-lang="en-US">A simple reference to an empty cell is still displayed as numeric 0 but is not necessarily of type numeric anymore, so also comparisons with the referencing cell work as expected. </paragraph>
<paragraph role="paragraph" id="par_id4238715" xml-lang="en-US">For the following examples, A1 contains a number, B1 is empty, C1 contains the reference to B1:</paragraph>
<paragraph role="code" id="par_id8277230" xml-lang="en-US">A1: 1 B1: <Empty> C1: =B1 (displays 0)</paragraph>
<paragraph role="code" id="par_id4086428" xml-lang="en-US">=B1=0 => TRUE</paragraph>
<paragraph role="code" id="par_id9024628" xml-lang="en-US">=B1="" => TRUE</paragraph>
<paragraph role="code" id="par_id3067110" xml-lang="en-US">=C1=0 => TRUE</paragraph>
<paragraph role="code" id="par_id8841822" xml-lang="en-US">=C1="" => TRUE (previously was FALSE)</paragraph>
<paragraph role="code" id="par_id4077578" xml-lang="en-US">=ISNUMBER(B1) => FALSE</paragraph>
<paragraph role="code" id="par_id9094515" xml-lang="en-US">=ISNUMBER(C1) => FALSE (previously was TRUE)</paragraph>
<paragraph role="code" id="par_id396740" xml-lang="en-US">=ISNUMBER(VLOOKUP(1;A1:C1;2)) => FALSE (B1)</paragraph>
<paragraph role="code" id="par_id3859675" xml-lang="en-US">=ISNUMBER(VLOOKUP(1;A1:C1;3)) => FALSE (C1, previously was TRUE)</paragraph>
<paragraph role="code" id="par_id402233" xml-lang="en-US">=ISTEXT(B1) => FALSE</paragraph>
<paragraph role="code" id="par_id1623889" xml-lang="en-US">=ISTEXT(C1) => FALSE</paragraph>
<paragraph role="code" id="par_id7781914" xml-lang="en-US">=ISTEXT(VLOOKUP(1;A1:C1;2)) => FALSE (B1, previously was TRUE)</paragraph>
<paragraph role="code" id="par_id300912" xml-lang="en-US">=ISTEXT(VLOOKUP(1;A1:C1;3)) => FALSE (C1)</paragraph>
<paragraph role="code" id="par_id9534592" xml-lang="en-US">=ISBLANK(B1) => TRUE</paragraph>
<paragraph role="code" id="par_id4969328" xml-lang="en-US">=ISBLANK(C1) => FALSE</paragraph>
<paragraph role="code" id="par_id9635914" xml-lang="en-US">=ISBLANK(VLOOKUP(1;A1:C1;2)) => TRUE (B1, previously was FALSE)</paragraph>
<paragraph role="code" id="par_id2476577" xml-lang="en-US">=ISBLANK(VLOOKUP(1;A1:C1;3)) => FALSE (C1)</paragraph>
<paragraph role="note" id="par_id4217047" xml-lang="en-US">Note that Microsoft Excel behaves different and always returns a number as the result of a reference to an empty cell or a formula cell with the result of an empty cell. For example:</paragraph>
<paragraph role="code" id="par_id2629474" xml-lang="en-US">A1: <Empty></paragraph>
<paragraph role="code" id="par_id8069704" xml-lang="en-US">B1: =A1 => displays 0, but is just a reference to an empty cell</paragraph>
<paragraph role="code" id="par_id4524674" xml-lang="en-US">=ISNUMBER(A1) => FALSE</paragraph>
<paragraph role="code" id="par_id4396801" xml-lang="en-US">=ISTEXT(A1) => FALSE</paragraph>
<paragraph role="code" id="par_id5293740" xml-lang="en-US">=A1=0 => TRUE</paragraph>
<paragraph role="code" id="par_id7623828" xml-lang="en-US">=A1="" => TRUE</paragraph>
<paragraph role="code" id="par_id2861720" xml-lang="en-US">=ISNUMBER(B1) => FALSE (MS-Excel: TRUE)</paragraph>
<paragraph role="code" id="par_id9604480" xml-lang="en-US">=ISTEXT(B1) => FALSE</paragraph>
<paragraph role="code" id="par_id2298959" xml-lang="en-US">=B1=0 => TRUE</paragraph>
<paragraph role="code" id="par_id4653767" xml-lang="en-US">=B1="" => TRUE (MS-Excel: FALSE)</paragraph>
<paragraph role="code" id="par_id8801538" xml-lang="en-US">C1: =VLOOKUP(...) with empty cell result => displays empty (MS-Excel: displays 0)</paragraph>
<paragraph role="code" id="par_id6746421" xml-lang="en-US">=ISNUMBER(VLOOKUP(...)) => FALSE</paragraph>
<paragraph role="code" id="par_id4876247" xml-lang="en-US">=ISTEXT(VLOOKUP(...)) => FALSE</paragraph>
<paragraph role="code" id="par_id7458723" xml-lang="en-US">=ISNUMBER(C1) => FALSE (MS-Excel: TRUE)</paragraph>
<paragraph role="code" id="par_id2753379" xml-lang="en-US">=ISTEXT(C1) => FALSE</paragraph>
</body>
</helpdocument>
|