VBA Eagle編
【1】ワークシートが変化したイベントをチェック
ガントチャートをリアルタイムに描画するにはワークシートの値が変化したことをチェックする
必要があります。Worksheet_Changeイベントでチェックできるのだが、1セルとは限らないので
以下のようにFor Each文でセル数分まわしてやる必要があります。後は各セル毎に処理すべき範囲に
在るのかをチェックします。
ワークシートに記述
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Range
For Each i In Target 'セル数分ループ
予定線作成 (i.Address)
休日塗 (i.Address)
Next i
標準モジュールに記述
Sub 予定線作成(Target As String)
With Range(Target)
If (.Column = Range(wi_期間).Column _
Or .Column = Range(wi_開始日).Column _
Or .Column = Range(wi_終了日).Column _
Or .Column = Range(wi_進捗).Column _
Or .Column = Range(wi_負荷).Column) _
And .Row >= Range(wi_期間).Row _
And .Row <= Range(wi_右下).Row Then
w_tchk = True
End If
End With