我正在创建一个Excel宏,它将根据几个条件过滤源工作表。基本上,宏说如果你在福特表中,请转到源表并过滤福特。那部分很容易。我正在努力的是告诉它根据活动单元过滤源表。所以......
如果ActiveCell是A1,请转到源并执行X个条件的过滤器,否则如果ActiveCell是B1,则转到源并执行此其他过滤器,依此类推。
这是我到目前为止所拥有的:
If ActiveCell = Range("C36") Then
Sheets("Source-Cars").Select
'Unfilter data
Application.Goto (Sheets("Source-Cars").Range("A1"))
If ActiveSheet.FilterMode Then
ActiveSheet.ShowAllData
end if
end if
这里的问题是ActiveCell = Range(“C36”)正在查看该单元格的值,而不是我是否选择了单元格。因此,如果我选择与C36具有相同值的另一个单元格,它将执行过滤器而不是返回我内置的错误消息框。
关于如何根据哪个单元处于活动状态(相对于所述单元的值)运行逻辑的想法?谢谢!
答案 0 :(得分:0)
您想使用ActiveCell.Address 它会告诉你价值$ A $ 1,然后你可以在比较中使用它。
尝试此示例代码以查看返回值的格式:
from django.views.decorators.csrf import csrf_protect
@method_decorator(csrf_protect)
def post(self, request, *args, **kwargs):
return SomeJson...
对于您的情况,您需要类似
的内容 Sub selectRange()
MsgBox ActiveCell.Address
End Sub