簡単なところから少しずつ
「考えててもしょーがない。
とりあえず、簡単なところから始めるか…」
星くんはまず、規格一覧表をシートに作り始めました。
「規格一覧表は、すでに生産技術が作ったものがあるから、これをコピーするだけだ。
あっと…、一覧表は独立したシートにあったほうが、後々操作しやすいな。
[規格一覧]という名前のシートを挿入し、そこに一覧表をコピーしよう」
「よし。次は、[規格]列のセルを選択したときフォームが表示されるよう、
[材料費]のシートにイベントプロシージャを作成しよう」
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row > 3 Then
If Cells(3, Target.Column) = "規格" Then
Frm規格入力.Show
End If
End If
End Sub
「…こんなとこか。
見積もりシステムの見出しは3行目、データは4行目以降にあるから、
まず" If Target.Row > 3 Then "で、選択されたセルが4行目以降…
つまりデータのある行かどうかを判定する。
次に、" If Cells(3, Target.Column) = "規格" Then "で、選択した列(Target.Column)の
3行目(見出し)が"規格"かどうかを判定する。
列が"規格"のときだけ、Showメソッドでユーザーフォームを表示する。
フォームの名前は、わかりやすく"Frm規格入力"でいいか」
シートモジュールにイベントプロシージャを作成すると、空のユーザーフォームを挿入し、
名前を「Frm規格入力」に変更しました。
「とりあえず、これで動くか試してみるか…」
「よし!」
データのある行の「規格」の列を選択したときはフォームが表示され、
それ以外ではフォームが表示されないことを確認すると、星くんはガッツポーズをとりました。