自动过滤器垂直排序数据,但我想水平过滤行。可以说我有下表:
1 2 2 1 2
BAEFF
BDEFF
CDEFF
我能做的是设置一个自动过滤器并只过滤第一列中包含“B”的行。我想做的是只过滤包含“2”的行(在这种情况下,这些行是第二个、第三个和最后一个)。
我找到了一些关于这个问题的信息。我找到的所有答案都包含一些宏来完成工作,但它们是为 MS Excel 编写的,并且与 OpenOffice 不兼容
例如,此宏应该过滤行,但在 OpenOffice Calc 中不起作用:
Option Explicit
Sub horizontal_filter()
'Erik Van Geit
'060910
Dim LC As Integer 'Last Column
Dim R As Long
Dim i As Integer
Dim FilterValue As String
Const FilterColumn = 1 '1 is most logical value but you may change this
R = ActiveCell.Row
LC = Cells(R, Columns.Count).End(xlToLeft).Column
FilterValue = Cells(R, FilterColumn)
Application.ScreenUpdating = False
'to filter starting after FilterColumn
For i = FilterColumn + 1 To LC
'to filter all columns even before the filtercolumn
'For i = 1 To LC
If i <> FilterColumn Then
Columns(i).Hidden = Cells(R, i) <> FilterValue
End If
Next i
Application.ScreenUpdating = True
End Sub
任何帮助是极大的赞赏!