1

VBAの簡単な質問です。データセット全体をループせずに、条件に基づいてデータをフィルター処理する VBA サブルーチンが必要です (この場合、列 C の内容が 11-Jun-12 [数値形式で 41071] に等しい場合)。私はインターネットでのフィルタリングを少し調べましたが、私が望んでいるものは何もないようです (または、何が起こっているのか本当に理解していません)。明確にするために、ここに私が欲しいものの例があります:

欲しいhttp://imgur.com/qebVv

http://imgur.com/zDncqに移動します。

ありがとう!

4

2 に答える 2

3

スクリーンショットに表示されているようにスプレッドシートが設定されていると仮定すると、次のことができます

Sub DateFilter()
    'hide dialogs
    Application.ScreenUpdating = False
    'filter for records that have June 11, 2012 in column 3
    ActiveSheet.Cells.AutoFilter Field:=3, Criteria1:="6/11/2012"
    'deletes all matching rows
    ActiveSheet.AutoFilter.Range.Delete
    Application.ScreenUpdating = True
End Sub
于 2012-07-30T19:21:05.663 に答える
2

ジャック・ラドクリフ

たとえば、単純なオートフィルターを意味しますか。

Sub SimpleColumnDateFilter1()

' Quick Recorded Macro
' Select a Column
' Activate Autofilter
' For a range C1 through the rest of C
' Autofilter such that the column will display dates not equal to 11/15/2012

Columns("C:C").Select
Selection.AutoFilter
ActiveSheet.Range("C:C").AutoFilter Field:=1, Criteria1:= _
    "<>11/15/2012", Operator:=xlAnd
End Sub
于 2012-07-30T18:43:17.430 に答える