大体でIT
大体でIT
Excel VBAで、結合したセルを正しくフィルタする方法について、ご紹介します。「PasteSpecial」で「数式」を貼り付けるとできます。セル結合された表で、フィルタした値を確認したい場合に使えます。
この記事では、結合したセルをフィルタする方法について、ご紹介します。
結合したセルはフィルタすると、「1行しか」フィルタできません。
どうしても結合したセルをフィルタしたい場合には、「SpecialCells」で「数式」の貼り付けをするとできます。
表がセル結合されているけど、フィルタして値が見えるようにしたい場合に使えます。
では、結合したセルをフィルタする方法について、解説していきます。
セル結合した表
1行しかフィルタできない
こんな感じで、セル結合すると、1行しかフィルタできないです。
やりたいことは、結合したセルも正しくフィルタしたい、ということです。
結合したセルも正しくフィルタしたい
結合セルに値を入力する(PasteSpecial)
やり方は、同じ値を「数式」の貼り付けする、という方法です。
- IF関数で同じ値を作成
- 作成したリストをコピー
- 「数式」を「PasteSpecial」で結合セルに貼り付け
- 作成したリストをクリア
Sub TEST1()
'IF関数で同じ値を作成
Range("C2:C9") = "=IF(A2<>"""",A2,C1)"
Range("C2:C9").Value = Range("C2:C9").Value '値に変換
'作成したリストをコピー
Range("C2:C9").Copy
Application.DisplayAlerts = False '警告を非表示
'数式の貼り付けをする
Range("A2").PasteSpecial Paste:=xlPasteFormulas
Application.DisplayAlerts = True '警告を表示
'作成したリストをクリア
Range("C2:C9").Clear
End Sub
結合したセルを用意
IF関数で同じ値を作成
作業列をコピー
「数式」の貼付けをする
作業列をクリア
結合セルも正しくフィルタできた
結合セルをどうしてもフィルタしたい場合に使えます。
この記事では、結合したセルをフィルタする方法について、ご紹介しました。
結合したセルはフィルタすると、「1行しか」フィルタできません。
どうしても結合したセルをフィルタしたい場合には、「SpecialCells」で「数式」の貼り付けをするとできます。
表がセル結合されているけど、フィルタして値が見えるようにしたい場合に使えます。
参考になればと思います。最後までご覧くださいまして、ありがとうございました。