VBでACCESSのデータを表示するSAMPLE
(BTSKさん)

BTSKさんのメールより
はじめまして。 HP上でお世話になっておりますBTSKです。
添付でSrcを送ります。内容は画面インターフェースをVB4.0で作って
DBとしてAccessを使用したものです。
全銀フォーマットのファイルをAccessテーブルに取り込んだあと
それをVBフォームのリストボックスに表示するためにSelectしてる部分です。
<いいわけ>
VB使いはじめてまもない頃の作品ですのでヘタです。(^_^;
(See attached file: VB_ACCESS.txt)

VB_ACCESS.IZH 977B
BTSKさん提供VBサンプル、テキスト形式です。


ソースです。
Sub ShowList()
'*-----------------------------------------*
'* 読み込んだファイルをリスト表示 *
'* ※企業毎に金額を合計 *
'*-----------------------------------------*

Dim MyWorkspace As Workspace, MyDatabase As Database
Dim MyTable As Recordset
Dim MyDef As QueryDef
Dim MyFile As String
Dim RS As Recordset, SQL As String
Dim ErrorCondition As Integer
Dim TEMP As String
Dim TEMP2 As String * 14

MyFile = App.Path & JET_DB_NAME

Set MyWorkspace = Workspaces(0)
Set MyDatabase = MyWorkspace.OpenDatabase(MyFile)

'振込元情報取得
SQL = "SELECT IRAI_CODE,IRAI_NAME,BANK_NAME,SITEN_NAME,"
SQL = SQL & "KOZA_NO,FURIKOMI_DATE "
SQL = SQL & "FROM FB_HEADER_REC"

Set RS = MyDatabase.OpenRecordset(SQL, dbOpenSnapshot)
RS.MoveFirst
subfrm1.label5(0).Caption = RS![BANK_NAME]
subfrm1.label5(1).Caption = RS![SITEN_NAME]
subfrm1.label5(2).Caption = RS![KOZA_NO]
subfrm1.label5(3).Caption = RS![IRAI_CODE]
subfrm1.label5(4).Caption = RS![IRAI_NAME]

RS.Close

'振込予定日は処理日の翌々日
subfrm1.label5(5).Caption = Format$(DateAdd("d", 2, Now), "mm")
subfrm1.label5(6).Caption = Format$(DateAdd("d", 2, Now), "dd")


'企業別振込金額取得
SQL = "SELECT BANK_CODE,BANK_NAME,SITEN_CODE,SITEN_NAME,"
SQL = SQL & "KOZA_NO,UKETORI_NAME,"
SQL = SQL & "SUM(FURIKOMI_GAKU) AS GOKEI "
SQL = SQL & "FROM FB_DATA_REC "
SQL = SQL & "GROUP BY "
SQL = SQL & "BANK_CODE,BANK_NAME,SITEN_CODE,SITEN_NAME,"
SQL = SQL & "KOZA_NO,UKETORI_NAME "
SQL = SQL & "ORDER BY UKETORI_NAME"

Set RS = MyDatabase.OpenRecordset(SQL, dbOpenSnapshot)
DT_R_O_CNT = 0
RS.MoveFirst
Do Until RS.EOF
DT_R_O(DT_R_O_CNT).BANK_CODE = RS![BANK_CODE]
DT_R_O(DT_R_O_CNT).BANK_NAME = RS![BANK_NAME]
DT_R_O(DT_R_O_CNT).SITEN_CODE = RS![SITEN_CODE]
DT_R_O(DT_R_O_CNT).SITEN_NAME = RS![SITEN_NAME]
DT_R_O(DT_R_O_CNT).KOZA_NO = RS![KOZA_NO]
DT_R_O(DT_R_O_CNT).UKETORI_NAME = RS![UKETORI_NAME]
DT_R_O(DT_R_O_CNT).FURIKOMI_GAKU = RS![GOKEI]

subfrm1.list1(0).AddItem RS![UKETORI_NAME]
subfrm1.list1(1).AddItem RS![BANK_NAME]
subfrm1.list1(2).AddItem RS![SITEN_NAME]
subfrm1.list1(3).AddItem RS![KOZA_NO]
TEMP = Format$(RS![GOKEI], "#,###,###,##0")

TEMP2 = Space$(14 - Len(TEMP)) & TEMP

subfrm1.list1(4).AddItem TEMP2
DT_R_O_CNT = DT_R_O_CNT + 1
RS.MoveNext
Loop
RS.Close
subfrm1.vscroll1.Max = DT_R_O_CNT - 1

'合計額取得
SQL = "SELECT SUM(FURIKOMI_GAKU) AS GOKEI "
SQL = SQL & "FROM FB_DATA_REC "

Set RS = MyDatabase.OpenRecordset(SQL, dbOpenSnapshot)
RS.MoveFirst
subfrm1.label2.Caption = Format$(RS![GOKEI], "###,###,###,##0")
RS.Close

MyDatabase.Close

End Sub

[電算担当者の部屋に戻る]