自動フィルターはデータを垂直方向に並べ替えていますが、行を水平方向にフィルター処理したいと思います。次の表があるとしましょう。
1 2 2 1 2
BAEFF
BDEFF
CDEFF
私にできることは、自動フィルターを設定し、最初の列に「B」を含む行のみをフィルター処理することです。私がやりたいのは、「2」を含む行のみをフィルタリングすることです(この場合、行は2番目、3番目、最後です)。
私はこの問題に関するいくつかの情報を見つけました。私が見つけたすべての回答には、仕事を遂行するためのいくつかのマクロが含まれていますが、それらはMS Excel用に作成されており、OpenOfficeと互換性がありません
たとえば、このマクロは行をフィルタリングする必要がありますが、OpenOfficeCalcでは機能しません。
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
どんな助けでも大歓迎です!