The new functions, TEXTJOIN and CONCAT, have been a great help, allowing
me to simplify some spreadsheets.
Partly motivated by this success, I have asked for enhancements to some
existing Calc functions that I would find useful:
Comments (and support) would be welcome.
All these enhancements are such that existing spreadsheets would
continue to work without needing modification.
The enhancements are highlighted below (*** ... ***).
SUBSTITUTE("Text"; "SearchText"; "NewText"; Occurrence)
Text is the text string in which text segments are to be exchanged.
SearchText is the text segment that is to be replaced (a number of
NewText is the text string that is to replace the text segment.
Occurrence (optional) indicates which occurrence of the search text
is to be replaced. If this parameter is omitted the search text is
*** If SearchText and NewText are both arrays, they must be the same
length: then each array element of NewText replaces the corresponding
element of SearchText. If only SearchText is an array, NewText replaces
each element of SearchText. ***
REPLACE("Text"; Position; Length; "NewText")
Text refers to text of which a part will be replaced.
Position refers to the position within the text where the
replacement will begin.
Length is the number of characters in Text to be replaced.
NewText refers to the text which replaces Text.
*** Text and NewText can be regular expressions. ***
MATCH(SearchCriterion; LookupArray; Type)
SearchCriterion is the value which is to be searched for in the
single-row or single-column array.
LookupArray is the reference searched. A lookup array can be a
single row or column, or part of a single row or column.
Type may take the values 1, 0, or -1. If Type = 1 or if this
optional parameter is omitted, it is assumed that the first column of
the search array is sorted in ascending order. If Type = -1 it is
assumed that the column is sorted in descending order. This corresponds
to the same function in Microsoft Excel.
If Type = 0, only exact matches are found. If the search criterion
is found more than once, the function returns the index of the first
matching value. Only if Type = 0 *** or Type > 1 *** can you search for
regular expressions (if enabled in calculation options) or wildcards (if
enabled in calculation options).
If Type = 1 or the third parameter is omitted, the index of the
last value that is smaller than or equal to the search criterion is
returned. This applies even when the search array is not sorted. For
Type = -1, the index of the first value that is larger than or equal is
*** If Type > 1, only exact matches are found. If the search criterion
is found more than once, the function returns the index of the Type'th
VLOOKUP(SearchCriterion; Array; Index; Sorted)
HLOOKUP(SearchCriterion; Array; Index; Sorted)
*** Sorted does the same as the Type parameter in function MATCH. ***
To unsubscribe e-mail to: email@example.com
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted
- [libreoffice-users] Enhancements to Calc functions · David Lynch
Impressum (Legal Info)
: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (MPLv2
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our trademark policy