私は年中無休のシートリストを作成しています。行はさまざまなユーザーによって手動で移入され、目的は1年を通してこれらの値を記録することです。列はその年の各日に固有であるため、特定の範囲を見つけるには多くのスクロールが必要です。Excel VBA:与えられた2つの日付間の列を非表示にする
私が達成したいのは、開始日と終了日の2つの日付で塗りつぶすことができる2つのセルを持つことです。これらのセルを入力すると、他のすべての列が表示されなくなります。
特定の日付の前にあるセルを非表示にする方法が見つかりましたが、別のセルの指定した日付の後に列を非表示にする方法を組み込むのに役立ちます。この場合、セルE35は
メソッドのVBAコードは、これまでのところです:ここ
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20160725
Dim xCell As Range
If Target.Address <> Range("E34").Address Then Exit Sub
Application.ScreenUpdating = False
For Each xCell In Range("H1:NG1")
xCell.EntireColumn.Hidden = (xCell.Value < Target.Value)
Next
Application.ScreenUpdating = True
End Sub
参照画像:Example
は、事前にありがとう// R