在excel中按条件检索单元格编号
我需要检索一些用于另一个函数的单元格编号 基本上,我需要一个函数,它可以测试一个条件并检索行号,然后可以将行号附加到我选择的列字母中。 函数的形式为在excel中按条件检索单元格编号,excel,vba,Excel,Vba,我需要检索一些用于另一个函数的单元格编号 基本上,我需要一个函数,它可以测试一个条件并检索行号,然后可以将行号附加到我选择的列字母中。 函数的形式为getcolnumbers(范围;标准;'column\u letter\u to\u be\u added\u to\u The\u numbers\u retrieved') Excel中有这样的函数吗?最简单的方法是将过程拆分为其他列。例如,添加一列C,其中 C1 = if(A1 > 5130, B1, "") 然后,根据您为A列提供的
getcolnumbers(范围;标准;'column\u letter\u to\u be\u added\u to\u The\u numbers\u retrieved')
Excel中有这样的函数吗?最简单的方法是将过程拆分为其他列。例如,添加一列C,其中
C1 = if(A1 > 5130, B1, "")
然后,根据您为A列提供的标准,C列将只包含您想要的B列的值。最简单的方法可能是将您的过程拆分为其他列。例如,添加一列C,其中
C1 = if(A1 > 5130, B1, "")
然后,根据为A列提供的标准,C列将只包含您想要的B列的值。您可以创建自己的用户定义函数:
Public Function getcolnumbers(r1 As Range, v As Variant, colid As String) As String
Dim r As Range
getcolnumbers = ""
For Each r In r1
If r.Value = v Then
getcolnumbers = getcolnumbers & ";" & colid & r.Row
End If
Next r
If Len(getcolnumbers) > 1 Then getcolnumbers = Mid(getcolnumbers, 2)
End Function
例如:
用户定义函数(UDF)非常易于安装和使用:
(注意:在工作表单元格中输入公式时,可能需要使用分号代替逗号)您可以创建自己的用户定义函数:
Public Function getcolnumbers(r1 As Range, v As Variant, colid As String) As String
Dim r As Range
getcolnumbers = ""
For Each r In r1
If r.Value = v Then
getcolnumbers = getcolnumbers & ";" & colid & r.Row
End If
Next r
If Len(getcolnumbers) > 1 Then getcolnumbers = Mid(getcolnumbers, 2)
End Function
例如:
用户定义函数(UDF)非常易于安装和使用:
(注意:在工作表单元格中输入公式时,可能需要使用分号代替逗号)不,您需要使用VBA编写一个-您尝试过吗?@MacroMan我正在尝试。我真的不熟悉宏我本来打算编辑你的问题,但是考虑到宏中也存在不一致性,我认为在这里指出它并让你编辑你自己的问题更为谨慎:在你的脑海中,列和行是颠倒的。列为字母(A、B、C等)并垂直排列,行为编号(1、2、3等)并水平排列。从概念上讲,这个问题没有缺陷,但将来如果你使用正确的答案,你会得到更好的答案vocabulary@RGA很抱歉。谢谢你指出无需道歉,只是想帮你得到最好的答案:)不,你需要用VBA写一个-你试过了吗?@MacroMan我正在尝试。我真的不熟悉宏我本来打算编辑你的问题,但是考虑到宏中也存在不一致性,我认为在这里指出它并让你编辑你自己的问题更为谨慎:在你的脑海中,列和行是颠倒的。列为字母(A、B、C等)并垂直排列,行为编号(1、2、3等)并水平排列。从概念上讲,这个问题没有缺陷,但将来如果你使用正确的答案,你会得到更好的答案vocabulary@RGA很抱歉。谢谢你指出不需要道歉,只是想帮你得到最好的答案:)嗨,这很有效。一个小问题。我正在另一个函数中使用结果。我检查了评估步骤。(我试图在getcolorcount函数中使用它
=getcolorcount(“K21;K24;K28;W23)
会导致错误。我应该将字符串转换为范围吗?@EchchamaNayak我不知道……问题可能是分号符号和逗号之间的差异notation@EchchamaNayakSine mu UDF()返回一组单元格地址,考虑将它封装在间接()函数中?在我的单元格中,用半冒号分隔,参数也是如此。它是有效的。一个小问题。我在另一个函数中使用结果。我检查了评价步骤。(我试着在GETCOLCONTULL函数<代码> = GETCOLLCOUNT中使用它。“K21;K24;K28;W23)导致错误。我是否应该将字符串转换为范围?@EchchamaNayak我不知道……问题可能是分号符号和逗号之间的差异notation@EchchamaNayakSIMUUDF()返回一个单元地址字符串,考虑将其封装在间接地址()中。我的工作表单元格中的函数??用分号分隔,参数也用分号分隔