Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6103 / 13645 ツリー ←次へ | 前へ→

【47203】検索文字の一致数を返す関数 なた 07/3/5(月) 13:37 質問[未読]
【47204】Re:検索文字の一致数を返す関数 Jaka 07/3/5(月) 14:08 発言[未読]
【47205】補足 Jaka 07/3/5(月) 14:22 回答[未読]
【47212】Re:検索文字の一致数を返す関数 Kein 07/3/5(月) 15:03 回答[未読]
【47216】Re:検索文字の一致数を返す関数 なた 07/3/5(月) 15:24 お礼[未読]

【47203】検索文字の一致数を返す関数
質問  なた E-MAIL  - 07/3/5(月) 13:37 -

引用なし
パスワード
   いつもお世話になっております。

ある文字列を検索する場合、その文字列が検索対象の文字から何個
見つかったのか返してくれる、便利な関数がないか調べています。
どなたか教えていただけないでしょうか?
よろしくお願いいたします。

例えば

検索文字:N10
検索対象文字:N10,N20,N50,N50,N10,N10

返り値=3

【47204】Re:検索文字の一致数を返す関数
発言  Jaka  - 07/3/5(月) 14:08 -

引用なし
パスワード
   http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=10477;id=excel
 ↑
全角文字です、半角英数字に直してください。もしくは、    ↑の番号を
記事番号に打ち込んでもいいです。

【47205】補足
回答  Jaka  - 07/3/5(月) 14:22 -

引用なし
パスワード
   上は、1文字対象だから、複数文字だったらこんな風に割り算する必要がありますね。
(下は、1文字も可)
因みに、
A1が、「N10」
A2が、「N10,N20,N50,N50,N10,N10」
としてのエクセル関数。

=(LEN(JIS(A2))-LEN(SUBSTITUTE(JIS(A2),JIS(A1),"")))/(LEN(JIS(A1)))

【47212】Re:検索文字の一致数を返す関数
回答  Kein  - 07/3/5(月) 15:03 -

引用なし
パスワード
   ユーザー定義関数で、ということなら

Function StCount(St As String, CkS As String) As Integer
  Dim i As Integer, Cnt As Integer
   
  If CkS = "" Then StCount = 0: Exit Function
  If IsNull(InStr(1, St, CkS)) Then
   StCount = 0: Exit Function
  End If
  i = InStr(1, St, CkS)
  Do Until i = 0
   Cnt = Cnt + 1
   i = InStr(i + 1, St, CkS)
  Loop
  StCount = Cnt
End Function

【47216】Re:検索文字の一致数を返す関数
お礼  なた E-MAIL  - 07/3/5(月) 15:24 -

引用なし
パスワード
   ▼JAKAさん
▼Kein さん

お世話になっております。
なたです。

ありがとうございました。
おかげさまで解決できました。
大変、勉強になり感謝いたします。


>ユーザー定義関数で、ということなら
>
>Function StCount(St As String, CkS As String) As Integer
>  Dim i As Integer, Cnt As Integer
>   
>  If CkS = "" Then StCount = 0: Exit Function
>  If IsNull(InStr(1, St, CkS)) Then
>   StCount = 0: Exit Function
>  End If
>  i = InStr(1, St, CkS)
>  Do Until i = 0
>   Cnt = Cnt + 1
>   i = InStr(i + 1, St, CkS)
>  Loop
>  StCount = Cnt
>End Function

6103 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free