may the VBA be with you

Excel VBAとか業務自動化とか

都道府県コード取得マクロ ができるまで おまけ

はじめに

前回、
vba-belle-equipe.hatenablog.com
VBAを使って無事に都道府県コードが取得できたわけですが、今回は他の方法を。

VLOOKUP

図のようにしまして

f:id:vba-belle-equipe:20160309201808p:plain

C2セルに下の式を入力し、

=VLOOKUP(MID($B2,1,3)&"*",$E$2:$F$48,2,FALSE)

オートフィルで下まで埋めれば同じようなことができます。

終わりに

よかったよかった。

おまけのおまけ

VBAの中でもVLOOKUP関数は使えます。

Sub 都道府県コード取得()
  Dim 都道府県名 As String
  Dim i As Long
  Dim maxRow As Long
  Dim str As String
  maxRow = Cells(Rows.Count, 1).End(xlUp).Row
  For i = 2 To maxRow
    都道府県名 = Left(Cells(i, 2), 4)
    Select Case 都道府県名
      Case "神奈川県", "和歌山県", "鹿児島県"
        
      Case Else
        都道府県名 = Left(都道府県名, 3)
    End Select
    str = Application.WorksheetFunction.VLookup _
          (都道府県名, Range("$E$2:$F$48"), 2, False)
    Cells(i, 3) = Format(str , "'00")       '(1)
  Next
End Sub
  1. 「01」が「1」になったりする対策