文字列に "、"(カンマ)が含まれているかどうかを調べたいと思います。 char-by-charを読む以外の選択肢はありますか?あなたが使用できるExcelの数式とコンマを見つける必要がある場合は文字列に別の文字列が含まれていないか確認してください。
答えて
が見つからない場合は
それが0
戻りますPOSで15を返しますInstr機能
Dim pos As Integer
pos = InStr("find the comma, in the string", ",")
を使用します=FIND(",";A1)
機能。
Instr
を使用して、大文字と小文字を区別しない文字列の位置を検索する場合は、Instrの3番目のパラメータを使用し、const vbTextCompare
(またはdie-hardsの場合は1)を指定します。比較が指定されている場合、開始引数が必要です:
Dim posOf_A As Integer
posOf_A = InStr(1, "find the comma, in the string", "A", vbTextCompare)
はあなたが私がリンク仕様で述べたように、この場合の開始位置を指定する必要があります14
注の値が得られます。
同じ種類のものを扱いますが、テキストの末尾から始めに検索を開始する機能があります(InStrRev)。文字列が単語「」のように、検索文字列を複数持っている場合、@のルネの答えパー
...
Dim pos As Integer
pos = InStrRev("find the comma, in the string", ",")
は...まだ、その後、POSに15を返しますが、になります。
Dim pos As Integer
pos = InStrRev("find the comma, in the string", "the")
は...代わりに、POSに20を返します6.
':
Public Function Contains(strBaseString As String, strSearchTerm As String) As Boolean
'Purpose: Returns TRUE if one string exists within another
On Error GoTo ErrorMessage
Contains = InStr(strBaseString, strSearchTerm)
Exit Function
ErrorMessage:
MsgBox "The database has generated an error. Please contact the database administrator, quoting the following error message: '" & Err.Description & "'", vbCritical, "Database Error"
End
End Function
この関数ではどのようなデータベースエラーが予想されますか?エラートラップとエラーメッセージは完全に無意味であるようです。 –
@ RoobieNubyこれは私のデフォルトのエラー処理です。私は何かが間違っていたら、スタッフが私に電話して、自分でそれを試して修正しないようにしたいので、私はすべての機能にそれを入れました。 – BFWebAdmin
また、特別な言葉like
使用することができます。
Public Sub Search()
If "My Big String with, in the middle" Like "*,*" Then
Debug.Print ("Found ','")
End If
End Sub
パターン形式へのリンクhttps://msdn.microsoft.com/en-us/library/swf8kaxw.aspx?f=255&MSPPError=-2147217396 –
は 'あなたのためINSTR'の仕事をしていますか? –