- ベストアンサー
エクセルで番号変換
エクセルで旧番号を入力すると、新番号をでるようにしたいのですが、 イメージで言うと 旧番号「1111」入力→ボタンクリック→新番号「abcd」表示 シンプルな機能でできる方法がありましたら、お教えください。 ちなみにマクロを組んだことがないので、参考になるサイトが ありましたら、併せてお教えしただけると幸いです。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
一般関数の VLOOKUP ではだめですか? VBAで行うにしても、 WorksheetFunction.VLOOKUP でいけると思います。
その他の回答 (1)
- pkh4989
- ベストアンサー率62% (162/260)
こんにちは。 「検索ボタン」なしで、シート上に「旧番号」を入力すると「新番号」が表示されるマクロを作ってみました。 試してみてください。 ・入力シート「シート名称は何でも良い」と ・「番号」シートを作る。 ※番号シートの「A列」に旧番号を入力しておく 「B列」に新番号を入力しておく A列 B列 1111 abcd 2222 efgh ・ ・ ※入力シートの「A列」で「旧番号」を手入力する 「B列」に自動的に「新番号」が表示される。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then 'B列に新番号を表示 Cells(Target.Row, 2) = Get_NewNo(Target.Value) '←旧番号で新番号を検索 End If End Sub '旧番号で新番号を検索 Function Get_NewNo(wCd As String) As String Dim Rng2 As Range Dim c As Range ' Get_NewMo = "" With Worksheets("番号") Set Rng2 = .Range("A1:A" & .Range("A" & Rows.Count).End(xlUp).Row) Set c = Rng2.Find(wCd) If Not c Is Nothing Then Get_NewMo = .Cells(c.Row, 2) '←新番号を設定 End If End With End Function <マクロ貼付方法> 入力シートを選択 → マウス右Click →「コードの表示」表示される画面にマクロを貼り付け