2.140 FAQ-1215 Origin 的单元格公式
Last Update: 5/17/2025
本页将对比可用于设置单元格值的常见 Excel 和 Origin 函数。
更多的单元格公式,请参阅 此页。
数据引用
Excel 和 Origin 都允许用户 通过拖放来扩展跨行或跨列的公式。其中包含了两种引用类型:相对引用和绝对引用。当单元格拖放到其他行列时,相对引用会发生变化,绝对引用则保持不变。
| 注意: 当把单元格公式复制到其他单元格时,Excel 中的行列引用会进行调整,而 Origin 则不会进行调整。 |
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 引用 A 列第一行 | A1 | A1 |
| A 列 |
A | A:A |
| 多列 | 多列时必须使用范围符号 (如 A1:C5)。 | A:C |
| 一个范围 | A1:C5 | A1:C5 |
| 引用工作簿中第一张工作表上的 A1 | 1!A1 Sheet1!A1 |
Sheet1!A1 |
| 引用其他工作簿 Book1 中第一张工作表上的 A1 | [Book1]1!A1 [Book1]Sheet1!A1 |
[Book1]Sheet1!A1 |
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 引用 A 列第一行 | $A$1 | $A$1 |
| A 列 | A | $A:$A |
| 一个范围 | Origin 不支持跨列范围的绝对引用 | $A$1:$C$5 |
| 引用工作簿中第一张工作表上的 A1 | 1!$A$1 Sheet1!$A$1 |
Sheet1!$A$1 |
| 引用其他工作簿 Book1 中第一张工作表上的 A1 | [Book1]1!$A$1 [Book1]Sheet1!$A$1 |
[Book1]Sheet1!$A$1 |
| Origin 单元格表示法 | Excel 表示法 |
|---|---|
| 在 Origin 中引用带有文本或返回文本值的单元格时,后面添加 $ 符号 例子: A1$
left(A1$, 2)$ |
对带有文本或数值的单元格,使用相同方式引用 例子: A1 left(A1, 2) |
在 Origin 公式中,符号 "$" 有两种截然不同的使用方式。如果 "$" 位于列或行引用之前,表示绝对列或行引用。如果 "$" 在列或行引用之后,则表示返回存储在字符串变量中的值。 |
常用函数
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 对单元格的值做加法 | total(A1:A3) 1 | sum(A1:A3) |
| 返回按行计算的值之和:A 到 C 列,D 到 G 列,以及 F 列。 | sum(A:C, D:G, F) | =SUM(A1:C1, D1:G1, F1) |
| 根据条件真假返回值 | (A1<=98.6)?(A1-98.6):Na()1 | if(A1<98.6, A1-98.6, NA()) |
| 连接 B 列第 1 行和 C 列第 1 行的字符串。 | B1$ + C1$ | B1 & C1 concatenate(B1, C1) |
| 连接 A 列和 B 列的字符串 | A$ + B$ | A1 & B1 或 concatenate(A1, B1), 然后拖动以自动填充到输出列的所有单元格 |
| 在 A 列查找 2,并返回该行 B 列的值。 | lookup(2, A, B)$1 | lookup(2,A:A,B:B ) |
| 在 B 列查找 E1 的值并返回该行 D 列的值 | lookup(E1, B, D)1 | vlookup(E1, B:D, 3) |
| 在 A 列中搜索 3.5 并返回其位置。 | index(3.5, A)1 | match(3.5,A:A ) |
| 根据指定格式的日期时间字符串返回儒略日值。 | date("1/1/2008")1 | datevalue("1/1/2008") |
| 查找两个日期(3/15/11 和 2/1/11)之间的天数。 | date("3/15/11")-date("2/1/11") | days("3/15/11","2/1/11") |
| 在一段文本字符串中定位一个文本字符串并返回起始位置 | find(B10, "M")1 | find("M", B10) |
| 返回指定行和列的值 | wcol(2)[4] | index(A:D, 4, 2) |
日期时间
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 取 A、B、C 列作为日、月、年值并返回相应的日期字符串。 | date2str(date(A,B,C),"dd/MM/yyyy")$1, 2 | date(A:A,B:B,C:C) |
| 输入指定格式的日期时间字符串,返回 Excel 识别的日期序列号(即 Origin 的儒略日值减去 2415018)。 | date("1/1/2008")-24150181 | datevalue("1/1/2008") |
| 输入特定文本格式日期字符串,返回(月份)日期 | day(date("2/18/2012 13:15:12"))1, 2 | day("7/18/2011 13:15:12") |
| 返回两个日期之间的天数 | date("7/18/2012")-date("3/15/2011")1 | days("2/1/12","3/15/11") |
| 返回日期时间字符串的小时值 | hour(date("7/18/2011 13:15:12"))1 | hour("7/18/2011 13:15:12") |
| 返回日期时间字符串的分钟值 | minute(date("7/18/2011 13:15:12"))1 | minute("7/18/2011 13:15:12") |
| 返回日期时间字符串的月份值 | month(date("7/18/2011 13:15:12"))1 | month("7/18/2011 13:15:12") |
| 返回指定格式的当前日期时间字符串 | date2str(now(),"MM/dd/yyyy HH:mm:ss")$1, 2 | now() |
| 返回当前时间的秒值 | second(date("7/18/2011 13:15:12"))1 | second("7/18/2011 13:15:12") |
| 以 (HH:mm:ss) 格式返回给定时间的儒略日值 | time("13:15:12")1 | timevalue("13:15:12") |
| 返回指定格式的当前日期字符串 | date2str(today(),"MM/dd/yyyy")$1, 2 | today() |
| Description | Origin 和 Excel 表示法 |
|---|---|
| 以 (HH,mm,ss) 格式返回给定时间的儒略日值 | time(13,15,12) |
工程
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 取二进制数的十进制值,然后将其转换为十六进制 | dec2hex(Bin2dec(A1))$1 | bin2hex(11111011) |
| 将十进制数转换为二进制 | dec2bin(-100)$1 | dec2bin(-100) |
| 将十进制数转换为十六进制 | dec2hex(-100)$1 | dec2hex(-100) |
| 将十六进制值转换为二进制 | dec2bin(hex2dec(B7))$1, 2 | hex2bin(B7) |
| 返回相当于十六进制值的十进制数 | hex(A2) 1 | hex2dec(A2) |
| 描述 | Origin 和 Excel 表示法 |
|---|---|
| 返回二进制数的十进制值 | bin2Dec(A1)1 |
| 将数字从一种测量系统转换为另一种测量系统。 | convert(1,"yd","m")1 |
信息
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 检查单元格 A1 中的值是否为数字 | istext(A1)=>01 | cell("type", A1)=>"v" |
| 检查单元格是否为空 | isempty(A1) 1 | isblank(A1) |
| 判断输入是否为文本 | istext(A1)?0:11 | isnumber(A1) |
| 描述 | Origin 和 Excel 表示法 |
|---|---|
| 若是缺失值则返回 1,否则返回 0 | isna(A1)1 |
| 判断输入是否为文本 | istext(A1)1 |
逻辑
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 当所有条件为真则返回 1 | A1>1 && A2>2 | and(A1>1 , A2>2) |
| 根据条件表达式返回指定值 | A1>0?1:-1 | if(A1>0,1,-1) |
| 如果输入值为缺失值或 NANUM 则返回指定值 | isna(sqrt(-4))?-1:0 | iferror(SQRT(-4),-1) |
| 当有条件为真则返回 1 | A1>1 || A2>2 | or(A1>1 , A2>2) |
| 逻辑真值。 注意: Origin 把所有非 0 值视为真 |
1 | TRUE |
| 逻辑假值。 | 0 | FALSE |
| 返回输入的异或 | ((3<4) + (4<5)) - int( ((3<4)+(4<5) )/2)*2 ==>0 | xor(3<4,4<5) ==> FALSE |
| 描述 | Origin 和 Excel 表示法 |
|---|---|
| 返回错误值 | NA() |
查找和引用
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 返回给定列引用的列号。 | colnum(col(B))1 | column(B1) |
| 在 A 列查找 2,并返回该行 B 列的值。 注意: Origin 中,要根据返回值的类型去决定使用 lookup()$ 还是 lookup()。 |
lookup(2, A, B)$1 | lookup(2,A:A,B:B ) |
| 返回范围内的值的索引。 | list(25,col(A)[1:3])1 index(25, A1:A3)1 |
match(25,A1:A3,0)=2 |
| 返回当前行值 | i1 | row() |
| 插入带有超链接的标签。 | http://www.originlab.com [Origin]1 | hyperlink("http://www.originlab.com","Origin") |
数学和三角学
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 返回给定数量的项目的组合数(包括重复)。 | combine(4+3-1,4-1)1 | combina(4,3) |
| 返回值的截断整数。 警告!: Excel 的 INT 函数向下取整,但 Origin 只取整数部分。例如:Origin 中 int(-1.23)=-1;而 Excel 中 INT(-1.23)=-2。 |
int(1.23)=1 int(-1.23)=-11 |
int(1.23)=1 int(-1.23)=-2 |
| 返回指定底数的对数。 | log(8)/log(2)1 | log(8, 2) |
| 返回以 10 为底数的对数。 | log(2)1 | log10(2) |
| 返回给定数字的乘幂 | 3^2 | power(3,2) |
| 返回除法的整数部分 | int(5/2)1 | quotient(5, 2) |
| 返回指定数据集的和 | total(A1:A5)1 | sum(A1:A5) |
| 描述 | Origin 和 Excel 表示法 |
|---|---|
| 返回绝对值 | abs(-1)1 |
| 返回相应三角函数的反函数 | acos(0)1 |
| 返回该数字的反双曲余切 | acoth(6)1 |
| 返回反余切值 | acot(2)1 |
| 返回反正弦值 | asin(0.5)1 |
| 返回反双曲正弦值 | ASINH(10)1 |
| 返回反正切值 | atan(1)1 |
| 返回坐标点 (x, y) 和正 X 轴之间的角度 | atan2(2,2)1 |
| 返回反双曲正切值 | atanh(0.76159416)1 |
| 返回给定集合中 n 个元素的 k 个组合的数量 | combine(8,2)1 |
| 返回余弦值。 | cos(pi/3)1 |
| 返回余切值 | cot(pi/6)1 |
| 将弧度转换为度数 | degrees(pi)1 |
| 返回指数值 | exp(1)1 |
| 返回非负整数的阶乘 | fact(5.5)1 |
| 返回自然对数值 | ln(10)1 |
| 返回一个整数除以另一个整数的整数模数 | mod(13,2)1 |
| 返回 pi 值 | pi |
| 将度数转换为弧度 | radians(180)1 |
| 从均匀分布的样本中返回 0 到 1 之间的值 | rnd()1 |
| 将数字四舍五入到指定的位数 | round(-1.99,0)1 |
| 返回给定值的三角正割 | secant(pi/3)1 |
| 返回给定值的双曲正割 | sech(1)1 |
| 返回实数的符号 | sign(2)=1 sign(0)=0 sign(-2)=-11 |
| 返回给定值的正弦值 | sin(pi/4)1 |
| 返回给定值的双曲正弦值 | sinh(5)1 |
| 返回给定值的平方根 | sqrt(2)1 |
| 返回给定值的正切值 | tan(pi/4)1 |
| 返回给定值的双曲正切 | tanh(0.5)1 |
统计
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 返回未校正的平方和 | rms(A)^21count(A)1 | sumsq(A:A) |
| 计算满足指定条件的值的平均值 | averageif(A, "col(A) > 5")1 | averageif(A:A, "> 5") |
| 计算满足指定条件的值的平均值 | averageif(A, "col(A) > 5 && col(B) < 10")1 | averageifs(A:A,A:A, ">5",B:B, "< 10") |
| 返回 beta 分布 | betacdf(1, 2, 2)1 | beta.dist(1,2,2,TRUE) |
| 返回指定的 beta 分布累积分布函数的反函数值 | betainv(0.8975362,8,10)1 | beta.inv(0.8975362,8,10) |
| 返回卡方分布 | chi2cdf(0.5,1)1 | chisq.dist(0.5,1,TRUE) |
| 返回卡方分布左尾概率的倒数。 | chi2inv(0.93,1)1 | chisq.inv(0.93,1) |
| 返回向量中元素的数量,向量的大小。 注意 Excel 会把缺失值排除,而 Origin 则不会。 |
count(A)1 | count(A:A) |
| 返回满足条件的值的计数 | countif(A,"col(A)>1")1 | countif(A:A,">1") |
| 计算满足多个指定条件的值的数量 | countif(A,"col(A)>1&&col(A)>4")1 | countifs(A:A,">1",A:A,">4") |
| 返回两个数据集之间的协方差 | cov(A, B)1 | covariance.s(A:A,B:B) |
| 返回 F 概率分布的倒数 | finv(A2, A3, A4)1 | f.inv(A2,A3,A4) |
| 返回 x 的对数正态分布 | logncdf(4,3.5,1.2)1 | lognorm.dist(4,3.5,1.2,TRUE) |
| 返回 x 的对数正态累积分布函数的反函数 | logninv(0.039084,3.5,1.2)1 | lognorm.inv(A2, A3, A4) |
| 正态分布的累积分布函数的反函数,返回概率值 | norminv(0.9)=1.28155156554461 | NORMINV(0.9,0,1)=1.281551566 |
| 返回两个数据集之间的相关系数的平方 | correl(A,B)^21 | rsq(A:A,B:B ) |
| 返回指定窗口宽度的每个点的移动斜率 | movslope(A,B)1 | slope(B:B,A:A) |
| 返回学生的 t 分布的左尾反函数 | tinv(0.75,2)1 | t.inv(0.75,2) |
| 返回比标准正态累积分布小 0.5 | prob(2)/21 | gauss(2) |
| 描述 | Origin 和 Excel 表示法 |
|---|---|
| 返回范围平均值 | mean(A1:A6)1 |
| 返回 2.5 的伽马函数值(1.329) | gamma(2.5)1 |
| 返回伽马函数的自然对数,Γ(x) | gammaln(4)1 |
| 返回数据集的峰度 | kurt(A)1 |
| 返回一组值中的最大值 | max(A1: C8)1 |
| 返回一组值中的最小值 | min(A1:C8)1 |
| 返回分布的偏度 | skew(A1:A4)1 |
文本
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 将字符串连成一个并返回结果字符串 | B1$ + C1$ | concatenate(B1,C1) |
| 返回文本最左边的字符 | left(A1$, 2)$1 | left(A1,2) |
| 返回字符串的字符数 | len(A1$) or len(A1)1 | len(A1) |
| 转换小写 | lower(A1$)$1 | lower(A1) |
| 通过指定起始字符和后续字符的数量返回提取字符 | mid(A1$, 2, 3)$1 | mid(A1,2,3) |
| 将文本中每个单词的首字母大写 | upper(left(A1$,1)$)$+lower(right(A1$,2)$)$1 | proper(A1) |
| 返回文本值最右边的字符 | right(A1$, 2)$1 | right(A1,2) |
| 返回字符串的位置,如果未找到则返回 -1 | search(A1$, "margin")1 | search("margin",A1) |
| 转换大写 | upper(A1$)$1 | upper(A1) |
| 描述 | Origin 和 Excel 表示法 |
|---|---|
| 将字符串转换为数字。指定小数和数字组分隔符的选项允许覆盖操作系统区域设置。 | NumberValue(string [, string Decimal, string Group])1 |
其他
| 描述 | Origin 单元格表示法 | Excel 表示法 |
|---|---|---|
| 为变量分配值并在表达式中使用这些值 | LET(t,if(A$==B$,1,0),t*500) LET(aa,left(A,1),bb,left(B,2), aa$+ "-" + bb$) |
LET(t,IF(A1=B1,1,0),t*500)
|
Keywords:LabTalk formula, LabTalk 公式, excel function, excel 函数, set cell value, 设置单元格值, refer to other cell, 引用其他单元格, define range in formula, 在式子中定义范围