三流君のソースコード置き場

ブログにソースコードをアップして、ブログの検索機能で利用してます(利用予定です)

よく検索されるキーワード: [VBA]/ [VBS]/ [CreateObject]/ [Excel]/ [ADO]


VBA InStr関数で文字列を探す、位置を返す

InStr関数を使用すると、
文字列の中から、指定した文字列の位置を知ることができます。

見つけた位置・場所 = InStr(探される元文字列, 探す文字)

なんて日本語で書くと、アレなんで
※オマエの日本語・説明文が悪いって
 読者様の心の声もありますが・・・

いつものテスト動画:
【VBA】InStr関数で文字列を探す、位置を返す 【三流君】 - YouTube
www.youtube.com


実際の例題をいくつかテストしてみます。

Bを探すと、2が返る
? InStr("ABCDEF", "B")
2

見つからないときは0を返す
? InStr("ABCDEF", "X")
0

もちろん、一文字じゃなくて、
文字列の中から文字列も探せます。
? InStr("ABCDEF", "DE")
4

Sub test_InStr()

    Const str123 = "1234567890"
    Const strMEMO = "こんにちは http://宣伝ページ.com 見てください"

    Debug.Print str123
    Debug.Print "から 567の位置を探す"
    Debug.Print InStr(str123, "567")
    Debug.Print "54の位置を探す 見つからないと0を返す"
    Debug.Print InStr(str123, "54")
    
    Debug.Print strMEMO
    Debug.Print "から http://の位置を探す"
    Debug.Print InStr(strMEMO, "http://")

    'よく使うのが、文字列の有無のチェックを>0のIf文で
    If InStr(strMEMO, "http://") > 0 Then
        Debug.Print "httpあり 宣伝 スパムです"
    Else
        Debug.Print "なし、普通のメッセージです"
    End If

End Sub

文字列を探す時に使ってみたください。
何かの参考となれば・・・
※蛇足・脱線はあたたかくスルーしてくださいね・・・

テスト動画※冒頭と同じ動画です
www.youtube.com
【VBA】InStr関数で文字列を探す、位置を返す 【三流君】 - YouTube

挨拶・自己紹介:
失敗続きのAB型の変わり者 :三流プログラマー Ken3です
フリーのエンジニア・個人事業主です・・と書くと聞こえはイイが(それとなくカッコよく聞こえるが)、 現在は小さな案件の受注請負 と 短期派遣 で 日々つつましく?ほそぼそと暮らしてます。
(※詳細は[三流君 三流プログラマーとは?]を見てください)


Ken3 ホームページ 目次

分類:HPを大きく分けると4つの柱(分類)です。
・[Excel/Access VBA]の解説
・[ASP(Active Server Pages)]の解説。
・[元コンビニ店長時代の話]が弟に巻き込まれ、失敗した脱サラ、畑違い?の仕事で失敗。
・[プログラマーの愚痴]では、あまり見せたくない三流プログラマーの内面かな。
三流君を踏み台にする
主に上記4つの分類でHP作成やメルマガの発行を行ってます。
※更新頻度が落ちていて情報の鮮度が悪いです。

三流解説動画の再生リスト
https://www.youtube.com/user/ken3video/playlists

本当に三流なんです(笑):たまにスゴイですねなんて言われることもありますが、
真実は→ [三流君の真実は...] ←を初めに見てくださるとわかると思います。
(からくりは、成功例↑しか載せてなくて ヒドイ失敗例はお蔵入り迷宮入りが多かったりします)