こんにちは!
参考になるかどうかわかりませんが・・・
VBAでの方法の一例です。
Sheet1にデータがあり↓の画像のようにSheet2に学校コード・役職コード・地域の表を作成しておきます。
Altキーを押しながらF11キーを押してください。VBE画面が出ますので、
標準モジュールに↓のコードをコピー&ペーストしてマクロを実行してみてください。
画像のようにSheet1のB列に学校コードを元に地域を表示するようにしてみました。
Sub test() '←この行から
Dim i, j As Long
Dim str1 As String
Dim ws1, ws2 As Worksheet
Set ws1 = Worksheets("sheet1")
Set ws2 = Worksheets("sheet2")
For i = 2 To ws1.Cells(Rows.Count, 1).End(xlUp).Row
For j = 1 To Len(ws1.Cells(i, 1))
str1 = Mid(Cells(i, 1), j, 3)
If IsNumeric(str1) Then
ws1.Cells(i, 1) = Replace(ws1.Cells(i, 1), str1, _
WorksheetFunction.VLookup(Val(str1), ws2.Range("A:B"), 2, False))
ws1.Cells(i, 2) = WorksheetFunction.VLookup(Val(str1), ws2.Range("G:I"), 3, True)
End If
Next j
Next i
Dim str2 As String
For i = 2 To ws1.Cells(Rows.Count, 1).End(xlUp).Row
For j = 1 To Len(Cells(i, 1))
str2 = Mid(ws1.Cells(i, 1), j, 1)
If IsNumeric(str2) Then
ws1.Cells(i, 1) = Replace(ws1.Cells(i, 1), str2, _
WorksheetFunction.VLookup(Val(str2), ws2.Range("D:E"), 2, False))
End If
Next j
Next i
End Sub '←この行まで
まず、Sheet1のA列のセルを3文字ずつ舐めるように検索して、
3桁の数値を学校名に置換・B列の地域名を表示
その後にもう一度各セルを1文字ずつ検索して、1桁数値を役職名に置換するようにしていますので、
少し時間がかかるかもしれません。
尚、一旦マクロを実行すると元に戻せませんので、
別Sheetにコピー&ペーストしてマクロを試してみてください。
以上、参考になれば良いのですが
的外れならごめんなさいね。m(__)m
お礼
画像データをつけていただき、ありがとうございました。 どうも私の質問の仕方が不充分だったようで、 皆様にうまく伝わっておりませんでした。 画像を貼り付けようと思いましたが補足では画像添付できなかったので 改めて新規に質問させていただきたいと思います。 どうもすみませんでした。