Step4 生徒マスターテーブルの作成 - 学校図書データベース

前回作成したデータベースに年・組・名前などを登録する生徒マスターテーブルを作成します。




Homeに戻る > Excelでアプリケーションソフト3 > 図書データベースソフト

生徒マスターテーブルの作成

作成した生徒マスターをAccessで開いた画面です。計画通りに作成できています。
生徒マスターテーブル

VBAコード

下記VBAコードに変更してください。

Private Sub CommandButton1_Click()
    Dim spath As String
    
    spath = SelectFolder_FileDialog(ActiveWorkbook.Path)
    If spath = "" Then
        Exit Sub
    End If
    If Right(spath, 1) <> "\" Then
        spath = spath & "\"
    End If
    'データベースとテーブルの作成
    MyMakeTosyomasterTable spath
End Sub

下記VBAコードに変更してください。

'データベースとテーブルの作成
Private Sub MyMakeTosyomasterTable(sDir As String)
    Dim db As Database
    Dim tbdef As TableDef
    Dim fld As Field
    Dim idx As DAO.Index

    ' データベースを作成します
    Set db = DBEngine.Workspaces(0).CreateDatabase(sDir & "図書データベース.mdb", dbLangJapanese)

    '図書マスターテーブルを作成します
    Set tbdef = db.CreateTableDef("図書マスター")

    'フィールドを作成します。
    Set fld = tbdef.CreateField("図書ID", dbLong)
    'オートナンバー型にします。
    fld.Attributes = dbAutoIncrField
    tbdef.Fields.Append fld
    
    Set fld = tbdef.CreateField("分類", dbText, 20)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("署名", dbText, 100)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("著書名", dbText, 30)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("出版社", dbText, 30)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("発行年月日", dbDate)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("ISBN番号", dbText, 20)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("値段", dbCurrency)
    tbdef.Fields.Append fld
    
    '主キーの作成
    Set idx = tbdef.CreateIndex("PrimaryKey")
    Set fld = idx.CreateField("図書ID", dbLong)
    idx.Fields.Append fld
    'Primaryプロパティをセット
    idx.Primary = True
    'インデックスを追加
    tbdef.Indexes.Append idx
    db.TableDefs.Append tbdef

    '終了処理を行います
    Set idx = Nothing
    Set fld = Nothing
    Set tbdef = Nothing


    '生徒マスターテーブルを作成します
    Set tbdef = db.CreateTableDef("生徒マスター")

    Set fld = tbdef.CreateField("生徒ID", dbLong)
    fld.Attributes = dbAutoIncrField
    tbdef.Fields.Append fld
    
    Set fld = tbdef.CreateField("年", dbLong)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("組", dbLong)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("番号", dbLong)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("名前", dbText, 30)
    tbdef.Fields.Append fld
    
    Set idx = tbdef.CreateIndex("PrimaryKey")
    Set fld = idx.CreateField("生徒ID", dbLong)
    idx.Fields.Append fld
    idx.Primary = True
    tbdef.Indexes.Append idx
    db.TableDefs.Append tbdef

    '終了処理を行います
    Set idx = Nothing
    Set fld = Nothing
    Set tbdef = Nothing


    'データベースを閉じます
    db.Close
    '終了処理を行います
    Set db = Nothing
End Sub

Homeに戻る > Excelでアプリケーションソフト3 > 図書データベースソフト

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved