[[20180329133724]] 『vbaで大文字・小文字・全角・半角を区別しない』(まさお) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『vbaで大文字・小文字・全角・半角を区別しない』(まさお)

こんにちは、
困っています。
vbaを使って文字検索しているのですが
下記だと大文字・小文字・全角・半角を区別します。

Private Sub CommandButton21_Click()

If Range("B4").Value = "" Then

    MsgBox "文字列を入力してください(あいまい検索)。"
    Exit Sub

  Else

    Dim kws As Worksheet

    Set kws = Worksheets("文字列検索")

    If OptionButton1.Value = True Then

      Worksheets("1996年-2013年").Range("B2").AutoFilter Field:=2, Criteria1:="*" & Worksheets("文字列検索").Range("B4").Value & "*" _
      , Operator:=xlAnd, Criteria2:="*" & Worksheets("文字列検索").Range("B8").Value & "*"
      Worksheets("1996年-2013年").Select

      Worksheets("2014年-").Range("B2").AutoFilter Field:=2, Criteria1:="*" & Worksheets("文字列検索").Range("B4").Value & "*" _
      , Operator:=xlAnd, Criteria2:="*" & Worksheets("文字列検索").Range("B8").Value & "*"
      Worksheets("2014年-").Select

 End If

  End If

End Sub
これを、大文字・小文字・全角・半角を区別しないようにするには
どうすればいいでしょうか?
ざっくりですみません。
宜しく、お願い致します。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


StrConv関数について調べてみてください。大文字&半角のように、元データを1つの種類に変換をかけてから処理しましょう。 そもそも、元データの文字種混在しているのが、話を難しくしている原因と思いますよ。
(???) 2018/03/29(木) 15:16

質問とは全く関係無いが、提示されたコードをみると、
せっかく、変数「kws」にWorksheets("文字列検索")をセットしてるのに生かしていない。
また、1段目のelse節の内側にほぼ全体を入れているけど、then節はExit Sub なのだから、以降をelse節にいれなくてもいいんじゃないかなとおもうので、
    Private Sub CommandButton21_Click()

        If Range("B4").Value = "" Then
            MsgBox "文字列を入力してください(あいまい検索)。"
            Exit Sub
        End If

        Dim kws As Worksheet
        Set kws = Worksheets("文字列検索")

        If OptionButton1.Value = True Then
            Worksheets("1996年-2013年").Range("B2").AutoFilter _
                Field:=2, Criteria1:="*" & kws.Range("B4").Value & "*", Operator:=xlAnd, _
                Criteria2:="*" & kws.Range("B8").Value & "*"

            Worksheets("2014年-").Range("B2").AutoFilter _
                Field:=2, Criteria1:="*" & kws.Range("B4").Value & "*", Operator:=xlAnd, _
                Criteria2:="*" & kws.Range("B8").Value & "*"
        End If
    End Sub
こんな感じに直した方がお互い見やすい気がします・・・・
(もこな2) 2018/03/29(木) 16:18

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.