LibreOffice Calc:具有空单元格的自动过滤器

时间:2014-04-06 22:44:00

标签: openoffice-calc libreoffice-calc

我在Libre办公室使用自动过滤器需要一些帮助。我的每个过滤列都应包含空单元格。

例如,如果这是数据:

enter image description here 我想过滤GMC和卡车,我会在每一列上得到这个(使用autofilter在excel中完成): enter image description here

但是在libre中这样做似乎是不可能的,即使使用标准过滤器(这不仅仅是几个列就非常麻烦)。有人能给我一个简单的方法吗?

2 个答案:

答案 0 :(得分:0)

您可以用一个空格填充空单元格。这样,它们在屏幕和打印上似乎仍然是空的,但空格字符可以进行过滤:

AutoFilter AutoFilter2

答案 1 :(得分:0)

我相信LibreOffice会在某个时候填补这个空白。与此同时,LibreOffice用户将使用解决方法,使用单个空间填充空单元格。如果你想自动化这个,使用LibreOffice Basic Sc​​ript这是一个简单的宏:

    REM ***** BASIC *****

Sub ForFilter()
 oModel = thisComponent ' at first examine thisComponent
 ' xray oModel
 oSpreadSheet = oModel.getCurrentController().getActiveSheet()
 ' oSpreadSheet = oModel.getSheets().getByIndex(0)
 ' xray oSpreadSheet
 xReplaceDescr = oSpreadSheet.createReplaceDescriptor()
 ' xray xReplaceDescr
 xReplaceDescr.SearchString = ""
 xReplaceDescr.ReplaceString = " "
 lFound = oSpreadSheet.replaceAll(xReplaceDescr)
 ' xray lFound
 'MsgBox lFound & " replaced. AutoFilter should work now!"
 MsgBox "Empty cells filled. AutoFilter should work now."
End Sub


您可以轻松地将其粘贴到工具>宏>组织宏> LibreOffice Basic ...>我的宏>标准(>模块1),点击'新' 。
宏是在' Sub'之间。直到'结束子'。

为宏创建一个按钮,例如在自定义工具栏上:
工具>自定义...>工具栏>新的 命名新工具栏:
标准2
保存:LibreOffice Calc。

选择工具栏' Standard2'。
点击“添加...'”。
分类:
LibreOffice宏>我的宏>标准>模块1
在“命令”下,选择“ForFilter”
点击“添加”,“关闭” 如果必须删除宏,请单击“修改”旁边的下拉列表中的“删除” 点击“确定”。
完成。

我改编了一个我在网上找到的剧本。代码行开头的撇号或引号(')表示该行不被解释为代码,而是作为注释。
要运行宏,只需单击“ForFilter”按钮。