Excel VBA質問箱 IV

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

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


74675 / 76732 ←次へ | 前へ→

【6518】Re:エラーが出てしまいます
発言  ichinose  - 03/7/7(月) 7:45 -

引用なし
パスワード
   ▼鉄人29号 さん:
おはようございます。

コンボボックスへのメンバー登録の方法も限定しないと下記の方法はうまくゆきませんね。
失礼しました。
例えば、Sheet1のセルA1からA5に「a,b,c,d,e」と入力されていてこれを
コンボボックスのメンバにするとします。
フォームモジュールに
'======================================================
Private Sub TextBox1_AfterUpdate()
  Dim in_data As String
  in_data = TextBox1.Text
  On Error Resume Next
  With ComboBox1
    .ListIndex = WorksheetFunction.Match(in_data, Sheets("sheet1").Range(.RowSource), 0) - 1
    End With
  on error goto 0
End Sub
'===========================================================
Private Sub UserForm_Initialize()
  ComboBox1.RowSource = "=sheet1!a1:a5"
  
End Sub
とすると、正常に作動します。

Listプロパティが多元配列になっていると、一度一次元配列に直さないと
Match関数は使えませんね。
コンボボックスのメンバの登録が別の方法なら
また教えてください。


>御回答ありがとうございます。
>教えていただいたコードを参考に動かしてみましたが、
> 
>実行時エラー'13':
>型が一致しません。
>
>というエラーがでます。
>解決法をお教えいただければ幸いです。
>私が試したコードは、以下の通りです。
>-------
>Private Sub TextBox3_AfterUpdate()
>
> Dim in_Data As String
> 
> in_Data = TextBox3.Text
> 
>   With ComboBox2
>    .ListIndex = WorksheetFunction.Match(in_Data, .List, 0) - 1
>   End With
>  
>End Sub
>--------

2 hits

【6511】コンボボックスとテキストボックス 鉄人29号 03/7/6(日) 9:49 質問
【6512】Re:コンボボックスとテキストボックス ichinose 03/7/6(日) 10:15 回答
【6514】エラーが出てしまいます 鉄人29号 03/7/6(日) 12:07 質問
【6518】Re:エラーが出てしまいます ichinose 03/7/7(月) 7:45 発言

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