Excel VBA質問箱 IV

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

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


44950 / 76732 ←次へ | 前へ→

【36790】Re:検索キーの半角の濁音・半濁音
発言  ichinose  - 06/4/13(木) 22:09 -

引用なし
パスワード
   こんばんは。

>検索キーワード   「ガスター」「カスター」
>検索結果      「ガスターテン」
>
>という感じです。
>よろしくお願いします。
>
>
>>「編集」「検索」のダイアログで、"全角・半角の区別をする"にチェックが
>>ついていたら、それを外して検索テストをしてみて下さい。
>>ちなみにマクロなら、Findメソッドの引数 MatchByte に False を渡すことと
>>等価になります。

新規ブックの標準モジュールに以下のコードで試してください。
コード内でサンプルデータも作成していますから、真っ白のシートのまま
実行してみて下さい。

'=========================================================
Sub main()
  Dim result As Variant
  Range("a1:a5").Value = _
    Application.Transpose(Array("項目", "ブイビーエー", _
                  "ガスターテン", "フイヒー", "カスターテン"))
  '↑サンプル作成
  MsgBox """カス""で検索----- Go"
  result = searcharray(Range("a2:a5"), "カス")
  For idx = LBound(result) To UBound(result)
    MsgBox result(idx)
    Next
End Sub
'========================================================================
Function searcharray(rng As Range, whatstr As String) As Variant
  Dim myarray As Variant
  myarray = Evaluate("if(Iserror(find(""" & _
            Replace(Replace(whatstr, "゙", ""), "゚", "") & """," & _
            "substitute(substitute(" & rng.Address & ",""゙"",""""),""゚"","""")))," & _
            """" & Chr(&HFF) & """," & rng.Address & ")")
  'if(Iserror(find("カス",substitute(substitute($A$2:$A$5,"゙",""),"゚",""))) _
                              ,"",$A$2:$A$5)
  '例えば↑こんな数式が評価されます
  
  If TypeName(myarray) = "Variant()" Then
    myarray = Application.Transpose(myarray)
  Else
    myarray = Array(myarray)
    End If
  searcharray = Filter(myarray, Chr(&HFF), False)
  Erase myarray
End Function

1 hits

【36774】検索キーの半角の濁音・半濁音 検索くん 06/4/13(木) 15:01 質問
【36781】Re:検索キーの半角の濁音・半濁音 Kein 06/4/13(木) 16:22 発言
【36786】Re:検索キーの半角の濁音・半濁音 検索くん 06/4/13(木) 19:42 質問
【36790】Re:検索キーの半角の濁音・半濁音 ichinose 06/4/13(木) 22:09 発言

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