DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DAOを用いたVBとACCESSの連携について

  • 題名: DAOを用いたVBとACCESSの連携について
  • 著者: アバ茶
  • 日時: 2004/08/12 14:16:43
  • ID: 5542
  • この記事の返信元:
    • (なし)
  • この記事への返信:
    • (なし)
  • ツリーを表示
環境/言語:[WinXP Pro,VB6.0,Access2003]
分類:[VB6以前]

テキストボックスとAccessをDAO3.6を用いて連結しようと考えています。
具体的な手順とソースは以下の通りです。

【サンプルソース】
Option Explicit
Private strYear As String * 4

Private Sub Form_Load()
strYear = Year(Now()) '…@
Call DataSet '…A
' Data1.refresh '…C
End Sub

Private Sub DataSet()
Text1.Text = strYear '…B
End Sub

【Data1の主な設定】
connect: Access2000;
ReadOnly: false
recordsettype: 1 - ダイナセット
recordsource: 日付設定

【Text1の主な設定】
datafield: 設定年度
DataSource: Data1

【Access2003のテーブル設定】
テーブル名: 日付設定(データ項目:設定年度[テキスト型])

【手順】
@ 現在の年をstrYearに設定
A DataSetをコール
B strYearをText1.Textに設定
C Data1をrefreshする(現在はコメントアウト)
【現状】
ウォッチ式などで調査した結果、手順BまではText1に値が設定されていました。
しかし、Form_Loadを抜ける、もしくはCを実行するとText1の値がクリアされてしまいます。
また、Accessファイルも見てみましたがDelete文などは実行していないのにテーブルに値が設定されていませんでした。

【質問内容】
text1.textの値をデータベースに設定し、
かつForm_Loadを抜ける、Cの手順を実行しても
text1.textの値を保持し続けるにはどうすればいいでしょうか?

どなたか解決策をご存知でしたらお教えいただけると幸いです。
よろしくお願いします。

DOBON.NET | プログラミング道 | プログラミング掲示板