2000年12月21日新規作成
  関谷トップページへ トップページへ

No.23 AM「Access_2 第2章 フォームの活用(つづき)」

2000.12.21 関谷

VB学習への補足と関連のWebサイト紹介

 VBでのプログラミングを実習してきたとのことで、データ型に関する補足説明を述べる。
 フォームのテキストボックスで入力したデータは、文字列である。これをVBでは自動的に数値に変換して演算してくれたりするが、うまくいかないときもある。
 例えば       "100" + "110"
これを文字列としてつなぐと "100110"(VBは、文字列の結合にも+を使う)
   数値として加算すると  "210"
従って、仕様どうりに、数値に変える関数Val()を使って、自分で数値型に変えて取り扱うのが良い。
 なお、VBの学習での参考になるWebサイトのいくつかを紹介している。

情報系のWebサーバへのファイルの登録

Wordのテキストで、Webサイトのファイルを作っている。それを情報系のWebサーバへ登録したが、不完全なままの状態の人がいた。ローカル(あるいは、ホームフォルダ)では、index.htmをダブルクリックして、ブラウザIE5で正しく表示されているなら、Webサーバで表示が出来ない原因は、Webサーバへの転送が出来ていない可能性がある。index.htmからのリンクやイメージのパス名が正しくない場合もある。
 このWebサーバでのファイル一覧などの確認とファイルの転送は、コマンドラインでもできるが、GUIのffftpなどが便利である。
 なお、Unixでは、フォルダ名・ファイル名を半角英数字のみにするのが良い(_線なども使えるが)。大文字と小文字も区別するので、要注意である。

 例題が表示できた方は、今後、各自のWebサイトを作ってみてください。


(第2章 フォームの活用(つづき)

2-2 得意先マスターの入力用フォームを編集する

2-2-5 オプショングループとオプションボタンの作成

2-2-5-1 オプショングループとオプションボタンの作成

Point オプショングループとオプションボタンのプロパティ

2-2-6 タブオーダーの設定

2-3 売上伝票の入力用フォームを作成する

2-3-1 メイン/サブフォーム

Point メイン/サブフォームと単票形式のフォーム

2-3-2 メインフォーム「F4売上伝票」の作成

2-3-2-1 もとになるテーブルの確認

2-3-2-2 もとになるクエリの作成

2-3-2-3 メインフォームの作成

参考 「伝票NO」が昇順に表示されない

2-3-3 サブフォーム「F5売上明細」の作成

2-3-3-1 もとになるテーブルの確認

2-3-3-2 もとになるクエリの作成

2-3-3-3 サブフォームの作成

2-3-4 メインフォームとサブフォームの合体

2-3-4-1 リレーションシップの確認

2-3-4-2 サブフォームの組込み

Point サブフォームのプロパティ

Let's Try フォームのレイアウトの変更

2-3-5 データの入力

Point メイン/サブフォームのデータ入力

参考 サブフォームの「伝票NO」フィールド

2-3-6 テキストボックスの作成

2-3-6-1 Sum関数

Point 計算結果が正しく表示されない

2-3-6-2 DateAdd関数

2-3-6-3 DateSerial関数

Point さまざまな関数

2-3-6-4 識別子を使った式

Point 式ビルダ


No.23 PM「ExcelVBA 第6章VBエディタでの編集、7章ユーザ定義関数」

第6章 VBエディタでの編集

6-1 ショートカットキーで編集する

 ショートカットキーの利点は、両手を使っての早い操作を可能にすること。右手でマウスを選択や位置の指定に使い、左手のショートカットキーでコピーや貼付けなどを指定する。

6-1-1 代表的なショートカットキー

 この表にあるショートカットキーは、ほかのテキストエディタやワープロソフトでも使えるものがある。それぞれのアプリケーションソフトでのショートカットキーは、メニューの右端に表示されるので、それを参照することが出来る。

6-2 別のモジュールへコピーする

6-3 デバッグする

 プログラムが正しく動くようにすることをデバッグ(虫取り)という。
 文法上のエラーは、自動構文チェック機能で分かる。関数名などのエラーもコンパイルエラーで反転された関数名からわかる。問題は、論理的なエラーである。考え間違いや変数名の間違いなどである。自分の思い込みがあるため、単語のスペルの間違いなどがあるのに見つけるのに時間が掛かったりする。

6-3-2 コンパイルエラー

 エラーを修正して正しくなったら、コードの変更をしない限り、再度、コンパイルが出来ないようになる。(これは、コンパイルの必要性が無いから、当然のことだが。)

第7章 ユーザ定義関数

7-1 ユーザ定義関数を作成する

7-2 三角形の面積関数を作成する

7-3 金種計算関数を作成する

 テキストでは、select case 文を使ってセルごとの数の計算関数を作っている。繰返しが多いので、配列とfor next文を使って作ると、以下のようになる。

Function mk(total, unit)
    Dim i As Integer
    
    Dim u_t(10) As Long			'配列で金種の表を作る
    u_t(1) = 10000
'    u_t(2) = 5000
'    u_t(3) = 1000
'    u_t(4) = 500
'    u_t(5) = 100
'    u_t(6) = 50
'    u_t(7) = 10
'    u_t(8) = 5
'    u_t(9) = 1
    For i = 2 To 8 Step 2
        u_t(i) = u_t(i - 1) / 2
        u_t(i + 1) = u_t(i) / 5
    Next i
      
    If unit = 10000 Then		' 計算式は2つである。
        mk = Int(total / unit)
    Else
        For i = 2 To 9
            If unit = u_t(i) Then
                mk = Int((total Mod u_t(i - 1)) / unit)
                Exit For	' 一致したら、ループから抜ける
            End If
        Next i
    End If
End Function

 関数を使うときの金種(2つめの引数)は、セルの行のみ絶対参照(例D$4)にすると、この関数式で列方向(横)のコピーができる。


7-4 成績評価関数を作成する

7-5 成績評価変更可能関数を作成する

7-6 成績評価省略可能関数を作成する

7-7 高機能表引きPupVLOOKUP関数を作成する

7-8 練習問題

以上