2017-08-02 31 views
0

ComboBoxに文字列のリストが設定されていて、リストがかなり長いため、ComboBoxのようなオートコンプリート機能を追加するのに苦労していますユーザーが文字を入力すると一致する文字列が表示されます。VBAを使用してMS WordのComboBoxに自動補完機能を追加

ここではAuto-Complete with only text and not numbers ComboBox Excel VBAが見つかりましたが、VBA Excelを使用しています。ここで

は、私は誰もがこれで私を助けることができる場合、私は感謝するだろう、これまで

Private Sub ComboBox1_Click() 
    Dim i As Long 
    Static found As Boolean 

    If found Then 
     found = False 
     Exit Sub 
    End If 

    With FormDialog.ComboBox1 
     .DropDown 
     '.MatchEntry = fmMatchEntryFirstLetter 
     If .Text = "" Then Exit Sub 
     For i = 0 To .ListCount 
      If InStr(.List(i), .Text) > 0 Then 
       found = True 
       If found Then 
        ' the suggestion code will go here I think 
       End If 
       Exit For '<--| exit loop 
      End If 
     Next i 
    End With 
End Sub 

を得たコードです。

+0

'MatchEntry = fmMatchEntryComplete'とマクロで作成するアクションの違いは何ですか? – Variatus

+0

'fmMatchEntryComplete'は、一致する文字のドロップダウンを表示せず、一致した文字列を直接、リスト内の書いた順序で選択します。上のコードは実際には同じようなことをしているので、私は助けを求めています。 – Stackgeek

+0

申し訳ありません。私の質問に答えましたか?あなたが入力したものだけを見たい場合は 'frmMatchEntryNone'を設定してください。 – Variatus

答えて

0

@jsotolaのコメントに続いて、私は、回答が@RalphによってAuto-Complete with only text and not numbers ComboBox Excel VBAに提供されているようなものが私の質問に答えるのに役立つと試行した。 txtSearchTerm_Change()メソッドに焦点を絞って、プログラム要件に適合させる必要があります。

最初にOption Compare Textを忘れずに検索で大文字と小文字を区別しないようにしてください。

私はそれが役に立ちそうです。

関連する問題