#319 2つの指定文字列で囲まれた部分を取り出すコード例 VBA

ある文字列内から特定の文字を探すには「InStr」関数を使います。また文字列内から特定の位置と長さの文字を取り出すには「Mid$」関数を使います。これらの関数を組み合わせることによって、2つの指定文字列で囲まれた部分だけを取り出すことができます。

サンプルプロシージャ:
Public Function GetInnerStr(strData As String, strKey1 As String, strKey2 As String) As String
'概要 2つの指定文字列で囲まれた部分を取り出す
'引数 strData : 全体の文字列
'     strKey1 : 前の検索文字列
'     strKey2 : 後ろの検索文字列
'返値 取り出された文字列

  Dim intdelm1 As Integer
  Dim intdelm2 As Integer

  '前の検索文字列の次の位置(取り出し開始位置)を取得
  intdelm1 = InStr(strData, strKey1) + Len(strKey1)

  '後ろの検索文字列の位置(取り出し完了位置)を取得
  intdelm2 = InStr(intdelm1, strData, strKey2)

  '2つの位置の間にある文字列を取り出して返り値にセット
  GetInnerStr = Mid$(strData, intdelm1, intdelm2 - intdelm1)

End Function


実行例:
サンプルプロシージャの実行例
| Index | Prev | Next |

この情報は参考になりましたか?、問題は解決しましたか?、もしまだなら......
T'sWareのワンポイトテクニカルアドバイスをご利用ください。3000円/件〜でご支援します。
スタンドアロンからSQL Server対応まで、オーダーメイドのシステムを短納期・安価でお届けします


Copyright © T'sWare All rights reserved