• ベストアンサー

アクセスのコンボボックスでの〇×表示について。

担当者フォームがあります。 クエリをもとにした担当者リスト一覧があります。 非連結のフォームがあります。 担当者フォームには担当者コード、担当者名、パスワード等があり、〇×選択で、参照・更新・保守があります。このフォームで新規登録。修正。削除ができるように作成しました。list_TANの中で項目をクリックすると、非連結のフォームにデータが入っていきます。 Private Sub list_TAN_AfterUpdate() Me.担当者コード = Me.list_TAN.Column(0) Me.担当者名 = Me.list_TAN.Column(1) Me.担当者かな = Me.list_TAN.Column(2) Me.パスワード = Me.list_TAN.Column(3) ' Me.参照 = Me.list_TAN.Column(4) If Me.list_TAN.Column(4) = "○" Then Me.参照 = 1 Else Me.参照 = 0 End If If Me.list_TAN.Column(5) = "○" Then Me.更新 = 1 Else Me.更新 = 0 End If If Me.list_TAN.Column(6) = "○" Then Me.保守 = 1 Else Me.保守 = 0 End If Me.cmd_登録.Enabled = False Me.cmd_修正.Enabled = True Me.cmd_削除.Enabled = True Me.cmd_クリア.Enabled = True で、非連結のフォームにはいっていくことはできたのですが、参照・更新・保守については、コンボボックスになっていて、値リストの集合タイプには1;○;0;×と記入してあります。 参照が〇となっていても、非連結に入ってくるのは×になってしまいます。〇→×、×→×。なのでまた入れなおさなきゃいけません。他の情報についてはうまく入っていってくれるのですが、コンボボックスの〇×だけが上手くいきません。どのようにすればきちんと表示できますか??分かる方いましたらご教示ください。宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
noname#140971
noname#140971
回答No.3

さて、ついつい、私も、[参照]のみが×になるようにコードを書いてしまいました。 Private Sub list_Tan_AfterUpdate()   Me.担当者コード = Me.list_Tan.Column(0)   Me.担当者名 = Me.list_Tan.Column(1)   Me.担当者かな = Me.list_Tan.Column(2)   Me.パスワード = Me.list_Tan.Column(3)   Me.参照 = Abs(Me.list_Tan.Column(4) = "○")   Me.更新 = Abs(Me.list_Tan.Column(5) = "○")   Me.保守 = Abs(Me.list_Tan.Column(6) = "○")   Me.cmd_登録.Enabled = False   Me.cmd_修正.Enabled = True   Me.cmd_削除.Enabled = True   Me.cmd_クリア.Enabled = True End Sub バグを取った後のコードは次のようです。 Private Sub list_Tan_AfterUpdate()   Me.担当者コード = Me.list_Tan.Column(1)   Me.担当者名 = Me.list_Tan.Column(2)   Me.担当者かな = Me.list_Tan.Column(3)   Me.パスワード = Me.list_Tan.Column(4)   Me.参照 = Abs(Me.list_Tan.Column(5) = "○")   Me.更新 = Abs(Me.list_Tan.Column(6) = "○")   Me.保守 = Abs(Me.list_Tan.Column(7) = "○")   Me.cmd_登録.Enabled = False   Me.cmd_修正.Enabled = True   Me.cmd_削除.Enabled = True   Me.cmd_クリア.Enabled = True End Sub <担当者> ID___担当者コード__担当者名____担当者かな__________パスワード___参照___更新___保守 1____101_______________中村 水_____なかむら もんど___MN007________○_______○_____○ 2____102_______________鈴木 恵_____すずき めぐみ_____MS007________×_______×_____× まあ、早い話が、カラムをずらして比較しているのではないのですか? 値集合ソース=SELECT 担当者.ID, 担当者.担当者コード, 担当者.担当者名, 担当者.担当者かな, 担当者.パスワード, 担当者.参照, 担当者.更新, 担当者.保守 FROM 担当者; 列幅=0cm;2.54cm;2.54cm;2.54cm;2.54cm;2.54cm;2.54cm;2.54cm であれば、間違いやすいミスです。

noname#49321
質問者

お礼

ご回答ありがとうございます<m(__)m>。カラムはずれていませんでした。クエリの中の『○』が『〇』になっていました。SELECT T_担当者.担当者コード, T_担当者.担当者名, T_担当者.担当者かな, T_担当者.パスワード, IIf([参照],"○","×") AS 式1, IIf([更新],"○","×") AS 式2, IIf([保守],"○","×") AS 式3, T_担当者.更新日 FROM T_担当者;ありがとうございました<m(__)m>。無事、動きました!

その他の回答 (3)

noname#140971
noname#140971
回答No.4

ズレでなければ、 MsgBox "|" & Me.list_Tan.Column(4) & "|" MsgBox Len(Me.list_Tan.Column(4)) で、確認することも必要ですね。

noname#49321
質問者

お礼

ありがとうございました<m(__)m>

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.2

>値リストの集合タイプには1;○;0;×と記入してあります。 ○の部分の内容を確認してください。他のコンボボックスと同じでしょうか? スペースが余分にあるとか、○(まる)でなくO(英字のおー)とかではないですか?

noname#49321
質問者

お礼

ご回答ありがとうございます<m(__)m>。○部分を確認しましたが、全て○でした。スペース部分もなかったです。。

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.1

>参照が〇となっていても、非連結に入ってくるのは×になってしまいます。 おそらく >If Me.list_TAN.Column(5) = "○" がいつもFalseになるのでしょうね リストに入っているのは本当にテキスト型の"○"ですか?

noname#49321
質問者

お礼

ありがとうございました<m(__)m>。SELECT T_担当者.担当者コード, T_担当者.担当者名, T_担当者.担当者かな, T_担当者.パスワード, IIf([参照],"○","×") AS 式1, IIf([更新],"○","×") AS 式2, IIf([保守],"○","×") AS 式3, T_担当者.更新日 FROM T_担当者;のクエリの書き換えで解決できました。

noname#49321
質問者

補足

ご回答ありがとうございます。できましたぁ!! もう一点お聞きしてもよろしいですか??○(丸印)になっていたのを〇(漢数字)に書き換えたら表示する事ができました。原因はこれだったのでしょうか??ちなみにリストは○(丸印)が入っています。 If Me.list_TAN.Column(4) = "○"(丸印)Then → "〇"(漢数字) If Me.list_TAN.Column(5) = "○" (丸印)Then → "〇"(漢数字) If Me.list_TAN.Column(6) = "○" (丸印)Then → "〇"(漢数字) に変更しました。 参考にしたプログラムの記述には"○" (丸印)が記されていてもきちんと表示されています。同じ記述の仕方をしているのに何故なのでしょうか。。

関連するQ&A

専門家に質問してみよう