你可以使用字符串公式来获取字段值字符串或是查阅检查字段内容,例如获取字符串的字符、替换大小写、确认空值等等。
以下列出所有支持的公式。公式请一律用大写表示!
公式 | 描述 |
---|---|
LEFT(value,length) | 取出某一字符串由左往右的字符,若长度为 3,则会取出由左往右的 3 个字符。请参阅这里。 |
RIGHT(value,length) | 取出某一字符串由右往左的字符,若长度为 3,则会取出由右往左的 3 个字符。请参阅这里。 |
MID(value,start,[length]) | 取出某一字符串的指定字符数,起始字符为 0。例如:字段 A1 的值为 ABCD,另一字段套用 MID(A1,1,2),回传的结果为 BC。请参阅这里。 |
FIND(find_text,within_text,[start_num]) | 在某个字字符串内找到另一个字字符串,并传回该字字符串在第一个字字符串中的起始位置。请参阅这里。 |
LEN(value) | 取出某一字符串的长度(字符数)。请参阅这里。 |
UPPER(value)/TOUPPERCASE(value) | 在不更动源值的情况下,用大写字母传回该值 |
LOWER(value)/TOLOWERCASE(value) | 在不更动源值的情况下,用小写字母传回该值 |
PROPER(value) | 将英文首字母转换为大写,并将非首字母改为小写 |
SUBSTITUTE(text,old_text,new_text,[instance_num]) | 将字字符串中的 old_text 部分以 new_text 替换 |
TEXT(value, format_text) | 以格式代码来套用格式,藉此变更数字显示的方式。详细请参阅这里。 |
REPT(value,number_times) | 回传以指定次数重复的值。详细请参阅这里。 |
SPELLNUMBER(number, [lang], [option]) | 在正式的文档中或是某些情况下会有使用一般字的数字来代替阿拉伯数字的情况。例如:以“壹佰”来表示 100。
如有这样的需求即可使用 SPELLNUMBER 公式来转换。详细的写法可以参阅这篇 |
TRIM() | 移除字段值首尾的全角、半角空格,同时中间如果有连续的全角、半角空格,只保留第一个空格。范例:TRIM(" a c") 会得到 "a c"(半a全半半半c,仅保留a全c) |
CHAR(number) | 使用 CHAR 将您从其他类型计算机上所获取之文件的字码页代码转换成字符。例如 CHAR(10) 会回传换行,CHAR(32) 会回传空格 |
ISBLANK() | 检查参照的字段是否为空值,可以直接参照指定字段或用于条件公式中,例如:ISBLANK(A2) 或 IF(ISBLANK(A2), 'Y', 'N') |
使用字符串公式十分简单:如果 A6 的值为“台北市”,而 A7 的值为“士林区福林路 1 号”,若希望把这两个字符串起来,则可以将公式写为“ A6+A7”,结果则会回传“台北市士林区福林路 1 号”。如果希望两个字符串间要有空格则可以写成 “ A6+" "+A7”。
备注:如果在公式中要表示“\”的话需要写成“\\”。
可以搭配 LEFT()、MID()、RIGHT()、FIND()、LEN() 等函数,灵活地从字字段中抽取需要的字符串:
公式 | 描述 |
---|---|
LEFT(value,length) | 取出某一字符串由左往右的字符,若长度为 3,则会取出由左往右的 3 个字符 |
RIGHT(value,length) | 取出某一字符串由右往左的字符,若长度为 3,则会取出由右往左的 3 个字符 |
MID(value,start,[length]) | 取出某一字符串的指定字符数,起始字符为 0。例如:字段 A1 的值为 ABCD,另一字段套用 MID(A1,1,2),回传的结果为 BC |
FIND(find_text,within_text,[start_num]) | 在某个字字符串内找到另一个字字符串,并传回该字字符串在第一个字字符串中的起始位置 |
LEN(value) | 取出某一字符串的长度(字符数) |
范例 1:抽取特定符号前后的内容。
例如:字段 “地区” 的值为 “台北市-中正区”。
希望将“城市”与“区域”分别显示在不同字段,可以设置以下公式:
(1) 抽取城市
在“城市”字段输入公式:LEFT(A1, FIND("-", A1)-1)
公式会先透过 FIND 函数找到“-”的位置,再由 LEFT 函数抽取左侧字,即可得到“台北市”。
(2) 抽取区域
在“区域”字段输入公式:RIGHT(A1, LEN(A1)-FIND("-", A1)
公式会使用 LEN 函数 计算字符串总长度,扣掉“-”之前的位置,再由 RIGHT 函数抽取右侧字,即可得到“中正区”。
就能将“地区”字段自动拆解为“城市”与“区域”。
范例 2:抽取字中间的字符串
假设字段 “产品编号” 的值为 “PRD-2023-001”,其中中间 4 码代表年份。
在年份字段套用公式:MID(A1, 4, 4)
就可以从第 5 个字符开始(起始字符为 0),抽取 4 个字符,即可得到 2023。
你可以使用 TEXT() 函数为字段设置特殊格式
公式 | 句法 |
---|---|
TEXT | TEXT(value, format_text) |
需要包含下列参数:
value(必填):要格式化的数值或日期,可以填入字段。
number_times(必填):指定格式
数值字段
若想将数值字段格式设置为 12,345.67,可以输入公式 TEXT(A1,'#,###.##'),
此公式也可以应用在其他数值相关字段格式上。
日期字段
例如,若要将日期字段显示为完整的星期名称(如 “Friday”),可以使用:TEXT(A1, "EE"),若希望显示缩写的星期名称(如 “Fri”),则可以使用:TEXT(A1, "E")。
其他有关字段格式设置的需求,可以参阅此篇文档。
用于将指定字或数值重复特定次数,避免手动输入。常见用途包括:排版或对齐字、以重复符号表示评分等级,或显示指定数量的字。
公式 | 句法 |
---|---|
REPT | REPT(value,number_times) |
需要包含下列参数:
value(必填):要重复的字或数值,可为字段引用或直接输入字/数字
number_times(必填):重复的次数,必须为正整数
范例:用重复符号标记满意度
在顾客满意度的“满意度星级”字段,若需要用星号表示分数,可使用公式:REPT("*", “满意度评分”字段)
系统会自动重复星号,快速呈现评分等级。