- ベストアンサー
エクセルのフィルターについて
一つのシート 1~100列目に Aというデータが入っています。102~200列目まで Bというデータが入っています。 A と B 二つのデータにそれぞれフィルターをかけることは出来ますか? なるべく1つのシート内で出来ればと思っています。どなたか 良い方法がありましたら教えてください。お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
プログラムの概要としては、「列の範囲指定をして、指定する条件に合致しない列を非表示とする」ことを、 1~100列目と102~200列目とに対しておこなうことになりましょう。 1~100列目での例を挙げれば、例えばこのようなものになるのではないかと思います。 For i = 1 To 100 If Cells((行番号), i) <> (条件) Then Columns(i).Hidden = True Next i なお、「列」(横方向:256列目まで)ではなく「行」(縦方向:65536行目まで)であれば、If~の部分はこのようになるかと思います。 If Cells(i, (列番号)) <> (条件) Then Rows(i).Hidden = True
その他の回答 (2)
- ok2007
- ベストアンサー率57% (1219/2120)
No.1&2の者です。 すみません、1点書き漏らしたことに気付いたので、追記させてください。 No.2でご紹介したプログラムは、フィルタそのものではなく、「条件に一致しない列(または行)を非表示にする」という処理です。これにより、フィルタと同等の機能を持たせられるのではないかと考えた次第です。 また、VBAで不明点が生じたときは、掲示板を活用なさってもよいものと思います。私の知るところでは、この掲示板の「その他(プログラミング)」カテゴリーのほか、mougやエクセルファンクラブ、VBA質問箱などが、比較的活発に利用されているようです。なお、これらを活用する際には、今まで以上にネチケットに配慮なさってくださいね(特に、マルチポストはかなり嫌われるのと、何が分からないのかを出来るだけ具体的に特定することが肝要のようです)。
お礼
教えていただいた 掲示板他 でもう少し勉強をしてみようと思います。 いろいろわかってくると VBAが楽しくなりそうですね。 御丁寧にありがとうございました。
- ok2007
- ベストアンサー率57% (1219/2120)
マクロ(VBA)を利用すれば、可能だと思いますヨ。
お礼
御回答ありがとうございます。 私はVBAに詳しくないので 自分では構成できないのです。 もともとのものを ちょっと修正するくらいしかできないもので・・・ お手数でなかったら プログラミング(?)を教えていただきたいのですが。
お礼
お返事ありがとうございます。 ためしに やってみたのですが、ちゃんと理解できない為 うまくいきません。 時間をかけて ゆっくり飲み込んでいこうと思います。 御協力 本当にありがとうございました。