Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


5974 / 13644 ツリー ←次へ | 前へ→

【47861】ComboBoxの表示で困ってます。 タフマン 07/3/24(土) 18:45 質問[未読]
【47868】Re:ComboBoxの表示で困ってます。 Mariko 07/3/24(土) 20:18 発言[未読]
【47869】Re:ComboBoxの表示で困ってます。 りん 07/3/24(土) 22:13 発言[未読]
【47909】Re:ComboBoxの表示で困ってます。 タフマン 07/3/26(月) 13:23 お礼[未読]

【47861】ComboBoxの表示で困ってます。
質問  タフマン  - 07/3/24(土) 18:45 -

引用なし
パスワード
   UserFormに下記のように記入し
ComboBoxでリストから選択した項目に対象となる
項目をTextBoxに表示するようにしてあります。
この状態のままでしたら正常に動作してくれますが、
それぞれをsheet2の特定のセルに代入する為に
ComboBoxとTextBoxそれぞれのプロパティーの
ControlSourceにsheet2!C3〜C6を設定すると
UserFormを開いて最初に選択した方のComboBox内には
何も表示されません、同時にセルにも選択した内容が代入されません。
このとき、対象となるTextBoxにはちゃんと表示されます。
なぜなのか分からず困ってます、どなたかご教授いただけないでしょうか。


Private Sub UserForm_Initialize()
  Worksheets("sheet1").Select
  With Me.ComboBox1
    .RowSource = "sheet3!A2:B102"
  End With    
  With Me.ComboBox2
    .RowSource = "sheet4!A2:B102"
  End With  
End Sub
Private Sub ComboBox1_Change()
  With Me.ComboBox1
    If .ListIndex <> -1 Then
      TextBox1.Text = .List(.ListIndex, 1)
    End If
  End With
End Sub
Private Sub ComboBox2_Change()
  With Me.ComboBox2
    If .ListIndex <> -1 Then
      TextBox2.Text = .List(.ListIndex, 1)
    End If
  End With
End Sub

【47868】Re:ComboBoxの表示で困ってます。
発言  Mariko  - 07/3/24(土) 20:18 -

引用なし
パスワード
   ▼タフマン さん:

今晩は・・・
正しく動作していると思いますが・・・・

>UserFormを開いて最初に選択した方のComboBox内には
何も表示されません
→数字でしましたがきっちりと拾っています
 ComboBox1と2は正常ですが・・・

>同時にセルにも選択した内容が代入されません。
このとき、対象となるTextBoxにはちゃんと表示されます。
→TextBoxに何を表すのでしょうか?ComboBoxと同じ内容ですと
Private Sub ComboBox1_Change()
  With Me.ComboBox1
    If .ListIndex <> -1 Then
      TextBox1 = .List(.ListIndex)
      End If
  End With
End Sub
ではないでしょうか?

何行目ですと
With Me.ComboBox1
    If .ListIndex <> -1 Then
      TextBox1 = .ListIndex
      End If
End With
では、ないでしょうか?


>

【47869】Re:ComboBoxの表示で困ってます。
発言  りん E-MAIL  - 07/3/24(土) 22:13 -

引用なし
パスワード
   タフマン さん、こんばんわ。

>UserFormを開いて最初に選択した方のComboBox内には
>何も表示されません、同時にセルにも選択した内容が代入されません。
>このとき、対象となるTextBoxにはちゃんと表示されます。
>なぜなのか分からず困ってます、どなたかご教授いただけないでしょうか。

ComboBoxはChangeではなくて、ExitのタイミングでControlSourceが更新されるようです。
なのでControlSourceを使用せずに、ChangeイベントでTextBoxに渡すときに、セルにも与えるようにすればいいのではないでしょうか?

【47909】Re:ComboBoxの表示で困ってます。
お礼  タフマン  - 07/3/26(月) 13:23 -

引用なし
パスワード
   Marikoさん、りんさん
御礼が遅くなり申し訳御座いませんでした。
少し風邪で寝込んでました・・・・・
まだまだVBAについて初心者ですので理解していない
部分が多く、もう少し勉強します。
有難う御座いました。

5974 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free