• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:フィルタオプションから連番をつけたい)

フィルタオプションから連番をつけたい

このQ&Aのポイント
  • フィルタオプションの設定からデータを抽出
  • 表示されたデータの連番を振る
  • マクロを作成し、一括処理する方法を教えてください

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 数式なら、A2 ~ =SUBTOTAL(3,C2)+MAX($A$1:A1) 下にフィルでコピーします。(マクロでワークシートに貼り付けてもよいけれども、数式を消さない限りは必要ないと思います。消してしまうようなら、最初からマクロに組み入れたほうがよいです。) ------------------------------------------- マクロなら、 With ActiveSheet   For Each c In .Range("A2:A7")     If c.EntireRow.Hidden = False Then      i = i + 1      c.Value = i     End If   Next c End With

noname#199333
質問者

お礼

ありがとうございました。 数式とマクロ、どちらも試してバッチリでした。大感動です! この答が解読できるよう、勉強させていただきます。 ちなみに例として作った質問の検索条件とVBE、今更ですが間違いに気がつきました。なのによく質問を理解していただきました。 重ねてありがとうごさいました。 正しくは、 =検索条件=   A   B   C 1 業種 業種 業種 2 電気 ガス サービス =VBE= Range("C1:C7").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _ Sheets("検索条件").Range("A1:A2"), Unique:=False (業種ごとに.Range("B1:B2")・・・)

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

SUBTOTALの範囲がB2:B2というのも気になりますが、関数を次のようにして使っているでしょうか? WorksheetFunction.Subtotal(3,Range("B2:B2"))

noname#199333
質問者

補足

早々のご回答ありがとうございます。 正確には A2セルから下へ =SUBTOTAL(3,$B$2:B2)、=SUBTOTAL(3,$B$2:B3)、=SUBTOTAL(3,$B$2:B4)と続き、1行目へオートフィルタをかけ、C1セルの業種を絞り込めば、次のように表示されます。 =リスト=   A    B     C 1 No. 事業所名  業種 2 1  ○1○社   電気 6 2  ○5○社   電気 7 3  ○6○社   電気

すると、全ての回答が全文表示されます。

関連するQ&A