Microsoft Excelでは、データをフィルタリングできます。 大量のデータを理解するのに役立つ便利な機能です。データベースを作成するために必要な技術的ノウハウが不足している場合、この機能は命の恩人です。フィルタはかなり基本的なものであり、列のデータを含めたり除外したりできます。フィルターは、対応する行のデータ値にも拡張され、適用されます。フィルターが実行しないのは、自動更新自体です。手動で更新したか式が使用されているために、フィルター処理された列の値が変更された場合、フィルターを再度適用する必要があります。簡単なコードスニペットを使用すると、フィルタリングされた列をその場で更新できます。
マクロを有効にして保存する必要がありますコードを使用するためのマクロ対応ファイルであるExcelファイル。XLSM。ファイルをマクロ対応ファイルとして保存するには、[ファイル]> [名前を付けて保存]に移動し、[名前を付けて保存]ダイアログボックスから[Excelマクロ対応ワークブック]を選択します。
次に、フィルターを適用したシートを選択します。それを右クリックして、コンテキストメニューから[コードの表示]を選択します。

Microsoft Visual Basicウィンドウが開き、現在のExcelシートが表示されます。コードウィンドウに次のコードを貼り付けます。
Private Sub Worksheet_Change(ByVal Target As Range) If Me.FilterMode = True Then With Application .EnableEvents = False .ScreenUpdating = False End With With ActiveWorkbook .CustomViews.Add ViewName:="Mine", RowColSettings:=True Me.AutoFilterMode = False .CustomViews("Mine").Show .CustomViews("Mine").Delete End With With Application .EnableEvents = True .ScreenUpdating = True End With End If End Sub

ファイルを保存します。 ファイルをExcelマクロ対応ワークブックとして保存しなかった場合は、再度保存するよう求められます。保存したこのファイルはコピーとして保存され、現在のファイルは上書きされません。
コードが追加されると、フィルタリングされた列のセルを更新でき、設定した条件に従ってフィルタリングされたデータが自動的に更新されます。このコードは、Stack ExchangeユーザーのSorinによって作成されました。
コメント