【发布时间】:2016-11-26 07:31:29
【问题描述】:
请协助我处理以下情况
我需要遍历一个范围并找到最小值。如果另一个范围中的对应值匹配,那么我需要找到列号。
我可以使用以下代码;但是,当有多个最小值时,以下代码总是给出第一个最小值列号。即使不满足条件,它也不会移动到下一个最小值列。
这是我想要申请的课程
MyOrder = 1
Do Until wksSkill.Cells(MyRow, MyColNum).Value <> "Exclude"
MyColNum = Application.Evaluate("=CELL(""col"", INDEX(" & MyColRange.Address(0, 0) & ", MATCH(SMALL(" & MyColRange.Address(0, 0) & ", " & MyOrder & " ), " & MyColRange.Address(0, 0) & ", 0)))")
MyOrder = MyOrder + 1
Loop
从另一个 if 语句传递的第一个“MyColNum”值,然后它将获取函数输出。它一直有效,直到范围有一个最小值。
请协助我进行其他选择
【问题讨论】:
-
MyColNum应该给你这个最小值的列,然后你想检查这个列和MyRow行中是否存在值“排除”,对吗? -
@Limak 感谢您对此进行调查。是的,你说的没错。
标签: excel excel-formula vba