プロが教えるわが家の防犯対策術!

すみません。質問させてください。
オートフィルタで抽出すると、青い三角になりますが、
それが見づらいので、抽出している行がすぐわかるようにしたいです。
(ファイルを縮小表示しているもので・・・)
オートフィルタをかけると、かけている(三角がある)セルだけ色が変わる・・
など、いい案があれば教えて下さい!

宜しくお願い致します。

A 回答 (1件)

イベントマクロを使えば可能ですが...


http://oshiete1.goo.ne.jp/qa2305999.html
△ここを参考にしたり、または以下。

AutoFilterの色づけしたい対象シートがSheet1だとします。
それとは別に作業用シートを準備します。
その作業用シート任意の1セルに数式を設定します。(たとえばA1)
=SUBTOTAL(3,Sheet1!A:A)
あとは、その作業用シートのシートモジュールのCalculateイベントを使います。
(作業用シートのシートタブ右クリック[コードの表示]で表示されるモジュールに
 以下コピーペースト)

'SheetModule
Option Explicit

Private Sub Worksheet_Calculate()
  Static r As Range
  Dim f  As Filter
  Dim i  As Long

  On Error GoTo errHndler
  With Sheets("sheet1") '実際の対象シート名に変更が必要
    If .AutoFilterMode Then
      With .AutoFilter
        If r Is Nothing Then Set r = .Range.Rows(1)
        For Each f In .Filters
          i = i + 1
          '33が、識別用 ColorIndex。任意で。
          r.Cells(i).Interior.ColorIndex = IIf(f.On, 33, xlNone)
        Next f
      End With
    Else
      If Not r Is Nothing Then r.Interior.ColorIndex = xlNone
      Set r = Nothing
    End If
  End With
errHndler:
  If Err.Number <> 0 Then MsgBox Err.Number & ":" & Err.Description
End Sub
    • good
    • 0
この回答へのお礼

有難うございます!!早速やってみます!!
Calculate モジュールを使うんですね・・・
またご報告したいと思います!!!

お礼日時:2009/05/12 17:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!