在Excel中的两个值之间插入线性值

例如A1单元格为1,A30单元格为30,想要在A2~A29之间,插入线性值。可以使用以下自定义函数。

'功能描述:在两个数之间填充线性值
'x、y:单元格。必须位于同行或同列
'pos:row()/column()
'返回值:单精度浮点数
Public Function 线性值计算(x As Object, y As Object, pos As Integer) As Single
    Dim length As Integer
    
    Application.Volatile True
    
    If (x.Column = y.Column) Then
        length = pos - x.Row
        线性值计算 = (y - x) / (y.Row - x.Row) * length + x
    Else
        length = pos - x.Column
        线性值计算 = (y - x) / (y.Column - x.Column) * length + x
    End If
End Function

使用方法:开发工具,VB编辑器,插入,模块。将代码复制粘贴后关闭编辑器界面。

然后在A2单元格输入公式:=线性值计算($A$1,$A$30,ROW())。然后下拉,将公式应用到A3~A29单元格。

因为A1和A30处于同列,变化量为行,所以公式中使用的是row()参数。若为同行,即变化量为列,那么输入的参数为column()。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值