現在フォームコントロールのボタン操作で下記を実行しています。
C2,C3のセルの値を変えることで自動で実行することは可能でしょうか?
Worksheet_Changeイベントで作成しないといけないことは分かったのですが
構文がわかりません。
そのままコピーしてもダメだったため教えてください。
詳しい方が近くにいません。
お忙しい中申し訳ございませんがよろしくお願いいたします。
Sub DatePeriod()
Const sCol As Long = 15
Const eCol As Long = 379
'全表示
Range(Columns(sCol), Columns(eCol)).Hidden = False
'非表示設定
If IsDate(Range("C2").Value) And IsDate(Range("C3").Value) Then
Dim mDate As Long: mDate = Cells(2, sCol).Value2
Dim mDate2 As Long: mDate2 = Cells(2, eCol).Value2
Dim sDate As Long: sDate = Range("C2").Value2
Dim eDate As Long: eDate = Range("C3").Value2
Dim memo As Long
'開始より前を非表示
If sDate > mDate Then
memo = sDate - mDate + sCol - 1
Range(Columns(sCol), Columns(memo)).Hidden = True
Cells(2, memo + 1).Activate
End If
'終了より後を非表示
If mDate2 > eDate Then
memo = eDate - mDate + sCol + 1
Range(Columns(memo), Columns(eCol)).Hidden = True
End If
End If
End Sub

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。