2007-12-20

If文

  1. 配列
    これまでの変数はxとかx1のように書きましたが、数学で使うx1, x2のように添え字付の変数を使うことも出来ます。添え字付の変数はx(1), x(2)のように書きます。
    使う場合は、プログラムの先頭で

    Dim x(100)

    のように、何個まで使うか明示しておく必要があります。
    もしx(1)は使わなくてx(2)からx(10)まで使うのなら

    Dim x(2 To 10)

    と書きます。
    Cells(1,1)からCells(100,1)までに書かれた数字をx(1)からx(100)へ読み込むには

    For i = 1 To 100
     x(i) = Cells(i, 1)
    Next i

    と書きます。
    次に、これらを足すには、1+2+…+100の計算同様

    wa = 0
    For i = 1 To 100
     wa = wa + x(i)
    Next i

    と書きます。

  2. Input Box
    プログラムの実行中に何かを問い合わせる画面を表示して、入力結果を変数xへ代入するには

    x = InputBox("a", "b")

    と書いて実行すると

    のように表示されます。上のプログラムでaとかbと書いた部分がそのまま表示されていますので、ここを必要に応じて書き直します。

  3. MsgBox これだけだと入力後何もせずに終わってしまうので

    x = InputBox("a", "b")
    MsgBox (x)

    と書いて、入力した内容が表示されるようにします。

  4. 課題1.
    1から入力した数までの合計を表示するプログラムを書いてください。
    例えば5と入力したら、1+2+3+4+5、つまり15を表示するプログラムです。

  5. If文
    先ほどのプログラムでゼロ以下の数を入力したら意味がありません。
    ですから、数が正なのかどうか判断させましょう。
    判断するにはIf文を使います。書き方は

    If 条件 Then
    条件が成り立つときに実行する文
    End If

    です。条件が成り立たないときは別のことをするなら

    If 条件 Then
    条件が成り立つときに実行する文
    Else
    条件が成り立たないときに実行する文
    End If

    のように書きます。

  6. 課題2
    正の数が入力されたら1からその数までの足し算をして答えを表示し、そうでない場合は"正の数を入力してください"と表示するプログラムを書いてください。
    VBAに関してはとても沢山の機能があってきりが無いので、この講義ではここまでにして、来年は別のテーマに入ります。最後に課題2をメールで提出してください。

  7. MsgBoxのあれこれ
    aとかbの部分は必要に応じて書き換えてください。

    x = MsgBox("a", 0, "b")

    x = MsgBox("a", 1, "b")

    OKをクリックするとxに1が代入され、キャンセルをクリックするとxに2が代入されます。

    x = MsgBox("a", 1, "b")
    MsgBox (x)

    を実行して、xの値を確かめてください。
    0,1の他にも、次のメッセージボックスの種類があります。

    2[中止]、[再試行]、[無視]
    3[はい]、[いいえ]、[キャンセル]
    4[はい]、[いいえ]
    5[再試行]、[キャンセル]

    クリックしたボタンとxに代入される値の関係

    1OK
    2キャンセル
    3中止
    4再試行
    5無視
    6はい
    7いいえ
  8. 次回の講義は1月10日5限です。試験期間中のこの講義を休講にしますので、その補講を、補講日であるこの日に行います。

0 件のコメント: