Accessのイベントプロシージャーでのコンボボックスの値の取得がうまくいきません。

Access初心者のため、どなたか、原因・対策方法を教えていただけないでしょうか?
よろしくお願いいたします。

再現方法
1.テーブル作成
 TBL_main コメントと担当を入力するテーブル。担当はTBL_staffとリンクしたコンボボックスで選択
 TBL_staff 担当を登録するテーブル
2.フォーム作成
 FRM_main ウィザードを利用してTBL_mainから作成
 FRM_main(非連結) FRM_mainのコピー。コンボボックスのDBとの連結を外す。
3.更新前イベントプロシージャー
Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim strItem As String
strItem = Me.担当.Value
MsgBox strItem
End Sub
4.各フォームにデータを入力し、更新する
FRM_main 担当の値がとれない→これを取りたい
FRM_main(非連結) 担当の値がとれる

※テスト用のプロジェクト。
http://www.oitawave.com/sample/test901.zip

私の環境
MS Acsess 2003 SP1
Windows XP SP2
DELL INSPIRON 9300 (2GB RAM)

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2008/04/15 19:45:21
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:guja No.1

回答回数40ベストアンサー獲得回数8

ポイント60pt

IDにオートナンバーのレプリケーションID型を指定していますが、

そこに入っている値はGUIDでありバイト配列となっています。


その値を文字列で取得したい場合はStringFromGUID関数でGUIDをstringに変換する必要があります。

strItem = StringFromGUID(Me.担当.Value)


http://office.microsoft.com/ja-jp/access/HA012289431041.aspx

id:zfmx

ありがとうございました。うまくいきました。

2008/04/15 19:44:53

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません