このサイトの記事内では「アフィリエイト広告」などの広告を掲載している場合があります。
消費者庁が問題としている「誇大な宣伝や表現」とならないよう配慮しコンテンツを制作しておりますのでご安心ください。
問題のある表現が見つかりましたらお問い合わせよりご一報いただけますと幸いです。

【VBA】指定した文字列を含む数を調べる方法(Len,Replace)

「すもももももももものうち」の中に「も」が何個含まれるか調べたい。

今回はこんなときに使えるVBAコードを紹介します。

抽象的にいうと、ある文字列の中に指定した文字列が何個含まれるか調べる方法となります。

汎用的なFunctionプロシージャにしたので、ぜひ活用してみてください。

VBAが難しいと感じたら
VBAのプロに代わりに作ってもらうのはいかがでしょうか?
ココナラでVBAの作成請負を受け付けています。お気軽にご相談ください。

指定した文字列を含む数を調べる方法(Len,Replace)

Function CharCount(str As String, chr As String) As Long
    '''str内にchrが何個あるかカウントして返す
    CharCount = Len(str) - Len(Replace(str, chr, ""))
End Function

Sub UseSample()
    Debug.Print CharCount("すもももももももものうち", "も") '8
End Sub

CharCountが文字列が何個含まれるか調べるFunctionプロシージャとなります。

このプロシージャはLen関数とReplace関数でシンプルに作っています。

具体的には、Replace関数で指定した文字列を削除して、元の文字列との長さの差を計算させています。

下のUseSampleがFunctionプロシージャを呼び出す使用例です。

CharCount(指定した文字列, 数えたい文字列)とすれば、Long型で文字列の数を返してくれます。

一度、デバッグ実行して動きを確認してみてください。

VBAが難しいと感じたら
VBAのプロに代わりに作ってもらうのはいかがでしょうか?
ココナラでVBAの作成請負を受け付けています。お気軽にご相談ください。

VBA

Posted by やろまい