見出し画像

第8回 VBAの悩みはVBAerに聞け

8週連続開催のVBAer Zoomイベント。
本日も40名以上のご参加ありがとうございます。
今回は和風スパゲティのレシピさんの登壇です。
今夜はVBAでAutoFilterを操作する方法です。
初心者向けともいえるし、中級者向けともいえる絶妙な内容でした。

私は普段VBAでオートフィルター使わないのですが、使えばめっちゃ便利そうだなぁぁと改めて感じました。
VBAまだまだ奥が深いぜぇぇ。

登壇内容メモ

・Ctrl+スペースキーの説明
・AutoFilterの基本
・AutoFilter 複数列フィルター わかりやすい指定方法
・Sheetオブジェクトを取得する方法
・Sheetオブジェクト名の変更方法
・オブジェクト型指定後のインテリセンス
・オブジェクト名からのインテリセンス
・WorksheetObject.AutoFilter.Rangeでオートフィルター範囲の取得
・AutoFilter.Range.Copy で一括コピー
・AutoFilterの罠(注意点)
・Worksheetのオートフィルタとテーブル(ListObj)のオートフィルター
・AutoFilter参考記事
 確実にWorksheet.AutoFilterを取得する関数
・AutoFilterを使った行削除
・EntireRowするまえにSelectで確認。Offset(1)忘れずに。
・AutoFilterのフィルタには正規表現使える(ワイルドカードとか)
・Worksheet.ShowAllData
・Worksheet.copyメソッドはBooleanしか返さない。
 新規シートオブジェクトの取得にはset ws = Activesheet 
・抽出・集計・削除コードは分けて作りましょう
公式面(コウシキズラ)したオリジナルリボン!

画像1

・AutoFilter範囲のループ文の書き方

画像2

・第1列目の範囲だけ取得する方法

画像3

画像4

・フィルタ範囲でE列を直接指定する方法
 Intersectメソッドの有効活用

画像5

・Enumのススメ
 Enumは定数。Enum使えば修正が容易。

・Enum定数の値は途中で再定義できる

画像6

・Enumインテリセンスを出さない方法。[]の使い方
 くだもの売上データの列.[_A]と入力すれば使えます。

画像7

・Rangeオブジェクト.SpecialCells(xlCellTypeVisivle)の応用。
 AutoFilterと相性がいい。
 抽出した結果のレコード数の抽出

画像9

・SpecialCellsを使ったフィルタ行データの消去

画像12

・toto先生のダジャレはちゅん先生のとかぶって空振りでした


画像8

・リベンジしたが、またもや空振り

画像10


・2次会ではチョイウケ

画像12

ファルス!



この記事が気に入ったらサポートをしてみませんか?