SSブログ

アクセス小僧:コンボボックスで選択されている項目を変更 [コンピューター]

アクセスのフォームに設置したコンボボックス(項目数=2)で選択されている

Combobox2.jpg

項目を反転するマクロを紹介します。各項目のListIndexは0, 1なので、1, 0にすることを考えます。
2つのListIndex値の和から、現在選択されている項目のListIndex値を引くことで、ListIndex値を反転できます。

現在選択されている項目現在のListIndex値 ListIndex値の反転
1番目の項目0(0 + 1) - 0 = 1
2番目の項目1(0 + 1) - 1 = 0


MicrosoftのListIndexの説明を読むと、「値の取得および設定が可能」とあります。

ComboBox.ListIndex プロパティ (Access)
https://msdn.microsoft.com/ja-jp/vba/access-vba/articles/combobox-listindex-property-access

そこで、コンボボックスの選択されている項目を反転するには、次のVBAコードで実現できると思っていました。

[コンボボックス名].ListIndex = 1 - [コンボボックス名].ListIndex

ですが、上記コードを実行すると、エラーになります。
ネットで検索してみると、コンボボックスの場合、ListIndexを設定するのではなく、Valueを設定するようです。

[コンボボックス名].Value = [コンボボックス名].ItemData(1 - [コンボボックス名].ListIndex)

上記コードを実行すると、うまくいきました。

以上。
ヤバイぜ!(9)  コメント(2) 
共通テーマ:パソコン・インターネット

ヤバイぜ! 9

コメント 2

cheese999

誤:
MicrosoftのListIndexの説明を読むと、「値の取得および設定が可能」とります。
正:
MicrosoftのListIndexの説明を読むと、「値の取得および設定が可能」とあります。
by cheese999 (2017-12-17 08:02) 

cheese999

ヤバイぜ! ありがとうございます[__猫]
by cheese999 (2017-12-17 08:03) 

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字(英大文字の「オー」、英小文字の「ユー」、アラビア数字の「ハチ」、アラビア数字の「イチ」、アラビア数字の「ニ」)を入力してください。

Facebook コメント

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。