| 
    
     |  | Sheet1のA列に所有者名称が記載されていますが、 その名称によって「所有者コード」に分類することになりました。
 例えば、「株式会社 日本」や「日本寺」、「医療法人 日本会」、
 「鳩山太郎」などが羅列していますので
 個人名以外をあいまい検索を行って、B〜Dのコードに置き換えています。
 
 コード入力時の「b〜d」以外は”Else”の部分となりますが、
 b〜dを順番に処理を行うことで、残る所有者名称の列は、
 1文字または1バイト以外が個人名ということになります。
 そこを判断させた後に「A」に書き換えたいと思っていますが、
 その場合の記述が分りませんし、何か良い方法はあるでしょうか。
 
 わたしの分る範囲でVBAを書いてみました。
 どうか宜しくお願い致します。
 
 Option Explicit
 Sub コード置き換え()
 Dim StrInput As String
 StrInput = InputBox("所有者コードを「小文字」で入力してください")
 ElseIf StrInput = "b" Then
 With Worksheets("Sheet1").Range("A2:A65536")
 .Replace What:="*寺*", Replacement:="B", _
 SearchOrder:=xlByColumns, MatchByte:=False
 .Replace What:="*宮*", Replacement:="B", _
 SearchOrder:=xlByColumns, MatchByte:=False
 .Replace What:="*神社*", Replacement:="B", _
 SearchOrder:=xlByColumns, MatchByte:=False
 End With
 ElseIf StrInput = "c" Then
 With Worksheets("Sheet1").Range("A2:A65536")
 .Replace What:="*会社*", Replacement:="C", _
 SearchOrder:=xlByColumns, MatchByte:=False
 .Replace What:="*(有)*", Replacement:="C", _
 SearchOrder:=xlByColumns, MatchByte:=False
 .Replace What:="*(株)*", Replacement:="C", _
 SearchOrder:=xlByColumns, MatchByte:=False
 .Replace What:="*(株)*", Replacement:="C", _
 SearchOrder:=xlByColumns, MatchByte:=False
 End With
 ElseIf StrInput = "d" Then
 With Worksheets("Sheet1").Range("A2:A65536")
 .Replace What:="*法人*", Replacement:="D", _
 SearchOrder:=xlByColumns, MatchByte:=False
 End With
 Else
 '      ここにどのような記述をすれば良いのでしょう?
 End If
 End Sub
 
 
 |  |