如果我在Excel中选择了多个单元格,我可以在自定义状态栏中看到一些单元格。这些信息是我自己选择的:
我想在此列表中添加一个计算非空单元格比率的函数。该函数将是= COUNTA(范围)/(COUNTA(范围)+ COUNTBLANK(范围)),但是如何将其输入状态栏? 我对VBA没有多少经验,所以欢迎一些解释。
答案 0 :(得分:7)
尝试这样的事情(不是最好的方法,但解决了你的目的)
解释:此代码执行的操作是检查用户是否选择了有效范围(至少2个单元格),然后使用Application.Evaluate
计算公式,然后将其显示在状态栏。另请注意,我没有做任何错误处理。我相信你会照顾它:)
将其粘贴到相关的表单区域。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If TypeName(Target) = "Range" Then
If Target.Cells.Count > 1 Then
Application.StatusBar = "My Function: " & _
Application.Evaluate( _
"=COUNTA(" & _
Target.Address & _
") / (COUNTA(" & _
Target.Address & _
") + COUNTBLANK(" & _
Target.Address & _
"))" _
)
End If
End If
End Sub
这是一种非常基本的方式。如果您希望它适用于所有纸张,那么您必须相应地进行修改。
此方法的问题还在于它会抑制状态栏中的应用程序级别消息。
<强>截图强>