★テキストの内容をシート上へ表示
 

 続いてテキストボックスに入力した内容をシート上に表示できるプログラムを考えて見ましょう。

 これにはいろいろな方法が考えられるのですが、私は簡単に
1.コンボ品名で品名を選択したら・・・選択された品名の数量にあたるところにセルを合わせる。
2.そのセルに数量を入力し、Offsetプロパティを使って1列横のセルに合計を入力する。
一応これでいける筈ですが、さて?どうでしょう?

ではまず
1.コンボ品名で品名を選択したら・・・選択された品名の数量にあたるところにセルを合わせる。
をコードにしてみましょう。

Private Sub コンボ品名_Change()
 '選択された品名に合わせて単価を表示します。
   テキスト単価 = Range("D3").Offset(コンボ品名.ListIndex).Value
 '選択された品名に数量のところのセルをアクティブにします。
   Range("D3").Offset(コンボ品名.ListIndex).Offset(, 1).Activate
End Sub


私はこんな感じにしましたよ。ちょこっとコメントも入れたりしました。

選択された品名の単価を表示する上のプログラムを利用して、その単価の横にあるセルをアクティブにしなさいってプログラムです。これを実行するとセルが選択された品名の横の数量に移動すればOKです。



B3にアクティブセルがありますが、これを実行すると



イチゴを選んでイチゴのある5行目の数量のあるE列、E5にアクティブセルが移動しました。
これでOK。
さてお次は
2.そのセルに数量を入力し、Offsetプロパティを使って1列横のセルに合計を入力する。
ですね。
これをコードのすると
Private Sub テキスト数量_AfterUpdate()
   テキスト合計 = テキスト単価 * テキスト数量
 'シート上のセルへ数量と合計を転記します。
   ActiveCell = テキスト数量
   ActiveCell.Offset(, 1) = テキスト合計

End Sub
これでコードの内容的にはうまく行くはずですが、さて実行してみましょう!
結果は次で!

[トップ][前へ][コンボボックス][次へ]