我想在VBA中控制切片器,并想使用以下命令检查是否选择了空值:
If slicerCache.SlicerItems.Item("(blank)").selected = True
空值会自动获得标签
(blank)
。一切正常,直到在非英语计算机上打开工作簿。例如。荷兰语的标签为(leeg)
,法文的标签为(vide)
。如何获得此标签的本地化版本?
在this link中,2009年提出了完全相同的问题,没有任何答案。
最佳答案
这是一个小技巧,也许会有更好的方法,但是它是实用的,并且适用于所有语言,前提是“空白”始终以开头为开括号和结尾为闭括号来表示,而没有其他切片器列表中的值包含开始打开和结束关闭括号。
For Each si In SlicerCache.SlicerItems
'EDIT: I originally wrote this, but the one below is more precise
'If InStr(si.Name, "(") And InStr(si.Name, ")") Then
If Left(si.Name,1) = "(" And Right(si.Name,1) = ")" Then
If si.Selected = True Then MsgBox si.Name & " is set to True"
End If
Next
关于excel - “(空白)”的本地化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33871635/