Visual Basic for Applications (VBA) 中可用的工作表函数。可以在 VBA 中通过 Application.WorksheetFunction 对象调用。

下面我将按照字母分组,对每个函数进行简要解释,并给出在 VBA 中使用的示例。


A 组

  • Acos: 返回数字的反余弦值。

    result = Application.WorksheetFunction.Acos(0.5)
    
  • Acosh: 返回数字的反双曲余弦值。

    result = Application.WorksheetFunction.Acosh(2)
    
  • And: 逻辑与运算(通常直接使用 VBA 的 And 运算符)。

    result = Application.WorksheetFunction.And(True, False)
    
  • Asin: 返回数字的反正弦值。

  • Asinh: 返回数字的反双曲正弦值。

  • Atan2: 返回给定 x 和 y 坐标的反正切值。

  • Atanh: 返回数字的反双曲正切值。

  • AveDev: 返回数据点与其平均值的绝对偏差的平均值。

  • Average: 返回参数的平均值。

    avg = Application.WorksheetFunction.Average(Range("A1:A10"))
    

B 组

  • BetaDist: 返回 Beta 分布的概率密度函数。
  • BetaInv: 返回 Beta 累积分布函数的反函数。
  • BinomDist: 返回一元二项式分布的概率。

C 组

  • Ceiling: 将数字向上舍入到最接近的指定基数的倍数。

  • ChiDist: 返回卡方分布的右尾概率。

  • ChiInv: 返回卡方分布右尾概率的反函数。

  • ChiTest: 返回独立性检验的卡方统计值。

  • Choose: 根据索引从值列表中选择一个值。

    value = Application.WorksheetFunction.Choose(2, "Apple", "Banana", "Cherry")
    
  • Clean: 移除文本中所有非打印字符。

  • Combin: 返回给定数目对象的组合数。

  • Confidence: 返回总体平均值的置信区间。

  • Correl: 返回两个数据集之间的相关系数。

  • Cosh: 返回数字的双曲余弦值。

  • Count: 计算包含数字的单元格数量。

  • CountA: 计算非空单元格数量。

  • CountBlank: 计算空单元格数量。

  • CountIf: 计算满足条件的单元格数量。

    count = Application.WorksheetFunction.CountIf(Range("A1:A10"), ">10")
    
  • Covar: 返回协方差。

  • CritBinom: 返回使累积二项式分布小于或等于临界值的最小值。


D 组

  • DAverage: 返回数据库中满足条件的平均值。
  • Days360: 基于 360 天计算两个日期之间的天数。
  • Db: 使用固定余额递减法计算折旧。
  • DCount: 计算数据库中满足条件的数字单元格数量。
  • DCountA: 计算数据库中满足条件的非空单元格数量。
  • Ddb: 使用双倍余额递减法计算折旧。
  • Degrees: 将弧度转换为角度。
  • DevSq: 返回偏差的平方和。
  • DGet: 从数据库中提取满足条件的单个值。
  • DMax: 返回数据库中满足条件的最大值。
  • DMin: 返回数据库中满足条件的最小值。
  • Dollar: 将数字转换为货币格式文本。
  • DProduct: 返回数据库中满足条件的数值的乘积。
  • DStDev: 估算数据库中满足条件的样本标准差。
  • DStDevP: 计算数据库中满足条件的总体标准差。
  • DSum: 返回数据库中满足条件的和。
  • DVar: 估算数据库中满足条件的样本方差。
  • DVarP: 计算数据库中满足条件的总体方差。

E 组

  • Even: 将数字向上舍入到最接近的偶数。
  • ExponDist: 返回指数分布。

F 组

  • Fact: 返回数字的阶乘。
  • FDist: 返回 F 概率分布。
  • Find: 查找字符串在另一个字符串中的位置(区分大小写)。
  • FindB: 用于双字节字符集的 Find。
  • FInv: 返回 F 概率分布的反函数。
  • Fisher: 返回 Fisher 变换值。
  • FisherInv: 返回 Fisher 变换的反函数。
  • Fixed: 将数字格式化为具有固定小数位数的文本。
  • Floor: 将数字向下舍入到最接近的指定基数的倍数。
  • Forecast: 根据线性趋势预测值。
  • Frequency: 返回频率分布数组。
  • FTest: 返回 F 检验的结果。
  • Fv: 返回投资的未来值。

G 组

  • GammaDist: 返回伽马分布。
  • GammaInv: 返回伽马累积分布的反函数。
  • GammaLn: 返回伽马函数的自然对数。
  • GeoMean: 返回几何平均值。
  • Growth: 返回指数趋势预测值。

H 组

  • HarMean: 返回调和平均值。
  • HLookup: 水平查找函数。
  • HypGeomDist: 返回超几何分布。

I 组

  • Index: 返回表或区域中的值或引用。

    value = Application.WorksheetFunction.Index(Range("A1:C10"), 3, 2)
    
  • Intercept: 返回线性回归的截距。

  • Ipmt: 返回投资期间支付的利息。

  • Irr: 返回内部收益率。

  • IsErr: 检查是否为错误值(除 #N/A 外)。

  • IsError: 检查是否为任何错误值。

  • IsLogical: 检查是否为逻辑值。

  • IsNA: 检查是否为 #N/A 错误。

  • IsNonText: 检查是否为非文本。

  • IsNumber: 检查是否为数字。

  • Ispmt: 返回特定期间内支付的利息。

  • IsText: 检查是否为文本。


J 组

(无函数)


K 组

  • Kurt: 返回数据集的峰值。

L 组

  • Large: 返回数据集中第 k 大的值。
  • LinEst: 返回线性趋势的参数。
  • Ln: 返回数字的自然对数。
  • Log: 返回数字的指定底数的对数。
  • Log10: 返回数字的以 10 为底的对数。
  • LogEst: 返回指数趋势的参数。
  • LogInv: 返回对数分布的反函数。
  • LogNormDist: 返回对数累积分布。
  • Lookup: 查找值(向量或数组形式)。

M 组

  • Match: 返回查找值在数组中的位置。

    pos = Application.WorksheetFunction.Match("Apple", Range("A1:A10"), 0)
    
  • Max: 返回最大值。

  • MDeterm: 返回矩阵的行列式。

  • Median: 返回中位数。

  • Min: 返回最小值。

  • MInverse: 返回矩阵的逆矩阵。

  • MIrr: 返回修改内部收益率。

  • MMult: 返回两个矩阵的乘积。

  • Mode: 返回数据集中出现频率最高的值。


N 组

  • NegBinomDist: 返回负二项式分布。
  • NormDist: 返回正态累积分布。
  • NormInv: 返回正态累积分布的反函数。
  • NormSDist: 返回标准正态累积分布。
  • NormSInv: 返回标准正态累积分布的反函数。
  • NPer: 返回投资期数。
  • Npv: 返回净现值。

O 组

  • Odd: 将数字向上舍入到最接近的奇数。
  • Or: 逻辑或运算(通常直接使用 VBA 的 Or 运算符)。

P 组

  • Pearson: 返回 Pearson 乘积矩相关系数。
  • Percentile: 返回区域中第 k 个百分点的值。
  • PercentRank: 返回数据集中值的百分比排位。
  • Permut: 返回给定数目对象的排列数。
  • Phonetic: 提取文本中的拼音字符(主要用于日语)。
  • Pi: 返回 π 的值。
  • Pmt: 返回每期付款额。
  • Poisson: 返回泊松分布。
  • Power: 返回数字的乘幂。
  • Ppmt: 返回每期付款中的本金部分。
  • Prob: 返回区域中的值落在指定区间内的概率。
  • Product: 返回参数的乘积。
  • Proper: 将文本转换为首字母大写。
  • Pv: 返回投资的现值。

Q 组

  • Quartile: 返回数据集的四分位数。

R 组

  • Radians: 将角度转换为弧度。
  • Rank: 返回数字在列表中的排位。
  • Rate: 返回每期利率。
  • Replace: 替换文本中的部分字符串。
  • ReplaceB: 用于双字节字符集的 Replace。
  • Rept: 重复文本指定次数。
  • Roman: 将数字转换为罗马数字文本。
  • Round: 将数字四舍五入到指定位数。
  • RoundDown: 向下舍入数字。
  • RoundUp: 向上舍入数字。
  • RSq: 返回 Pearson 相关系数的平方。
  • RTD: 从 COM 自动化服务器中检索实时数据。

S 组

  • Search: 查找字符串在另一个字符串中的位置(不区分大小写)。

  • SearchB: 用于双字节字符集的 Search。

  • Sinh: 返回数字的双曲正弦值。

  • Skew: 返回分布的偏度。

  • Sln: 返回直线折旧法的每期折旧。

  • Slope: 返回线性回归的斜率。

  • Small: 返回数据集中第 k 小的值。

  • Standardize: 返回正态化数值。

  • StDev: 估算样本标准差。

  • StDevP: 计算总体标准差。

  • StEyx: 返回回归的标准误差。

  • Substitute: 替换文本中的特定文本。

  • Subtotal: 返回列表或数据库中的分类汇总。

  • Sum: 求和。

    total = Application.WorksheetFunction.Sum(Range("A1:A10"))
    
  • SumIf: 对满足条件的单元格求和。

  • SumProduct: 返回数组对应元素乘积的和。

  • SumSq: 返回参数的平方和。

  • SumX2MY2: 返回两个数组中对应值平方差之和。

  • SumX2PY2: 返回两个数组中对应值平方和之和。

  • SumXMY2: 返回两个数组中对应值差的平方和。

  • Syd: 返回年限总和折旧法的每期折旧。


T 组

  • Tanh: 返回数字的双曲正切值。
  • TDist: 返回 Student t 分布。
  • Text: 将数值转换为文本。
  • TInv: 返回 Student t 分布的反函数。
  • Transpose: 转置数组。
  • Trend: 返回线性趋势值。
  • Trim: 移除文本中的多余空格。
  • TrimMean: 返回数据集的内部平均值。
  • TTest: 返回与 Student t 检验相关的概率。

U 组

  • USDollar: 将数字转换为美元格式文本。

V 组

  • Var: 估算样本方差。
  • VarP: 计算总体方差。
  • Vdb: 使用可变余额递减法计算折旧。
  • VLookup: 垂直查找函数。
    value = Application.WorksheetFunction.VLookup("Apple", Range("A1:B10"), 2, False)
    

W 组

  • Weekday: 返回代表一周中第几天的数值。
  • Weibull: 返回韦伯分布。

X, Y, Z 组

(无函数,除了 ZTest)

  • ZTest: 返回 z 检验的单尾概率值。

使用说明

在 VBA 中使用这些函数时,通常这样调用:

Dim result As Variant
result = Application.WorksheetFunction.FunctionName(arg1, arg2, ...)
Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐