gpt4 book ai didi

excel - 引用公式中的单元格地址/引用

转载 作者:行者123 更新时间:2023-12-04 20:51:29 32 4
gpt4 key购买 nike

我想通过 MIN 函数内的地址(例如,C800)引用包含文本的最后一个单元格。你能帮忙吗?

Sub Set_Formula()
' -----------------------------

Dim lastRow As Long
Dim Lastcell As Range
Dim LC As String

Set Lastcell = Range("C:C").Find("*", Range("C1"), SearchDirection:=xlPrevious)
Set LC = Lastcell.Address()

'find last cell in the row
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
Dim r As Long
For r = 2 To lastRow
If (Cells(r, 3).Value <> "") Then
Range("E8") _
= "=MIN(C2:LC)" 'The MIN function
End If
Next
End Sub

最佳答案

这不是我会这样做的方式,而是:

Range("E8") _
= "=MIN(C2:" & LC & ")" 'The MIN function
End If

并且,在您的代码中,由于 LC 是字符串而不是对象,请务必删除 Set单词。

当然,这会将静态公式放入 E8 .

因此,如果列 C更改(例如,在 LC 下方添加了更多数据),您需要将公式重写到工作表中。

如果您更喜欢自动调整以更改 C 列中的行数的公式,您可以使用:
=MIN(INDEX($C$2:INDEX($C:$C,LOOKUP(9.9E+307,$C:$C,ROW($C:$C))),0,1))

编辑 : (公式说明)

该公式使用 LOOKUP 的一个特征函数查找最后一行。当 lookup_value大于 lookup_array 中的任何值, LOOKUP将匹配 lookup_array 中的最后一个值.由于我们使用可选的 result_vector论据, LOOKUP返回匹配位置的值,即该行号。

通过使用一个非常大的数字作为查找值,接近 Excel 中允许的最大数字,我们保证 lookup_array 中不会有更大的数字。

然后我们使用 INDEX创建以 C2 开头的数组的函数(或您为起始单元格输入的任何内容)并结束和 Cn在哪里 nLOOKUP 返回的行号功能。

关于excel - 引用公式中的单元格地址/引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59379252/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com