教えて! goo のコンテンツに対する取り組みについて

お願いします。
エクセルで、文字を入力したら同じセルに数字が入力される方法を知りたいです。
https://oshiete.goo.ne.jp/qa/8514181.html
↑こちらの方の質問の逆バージョンとでも言いましょうか。
例えばA1セルに「田中太郎」と入力すれば同じA1セルに「1」と入力される感じです。

VBA素人ですが何卒よろしくお願い申し上げます。

gooドクター

A 回答 (3件)

こんにちは。



例えば、下記の様な感じでしょうか? セルのA1~A5を対象にしています。
ただ、田中太郎と漢字4文字を入れて、数字の1に変換ですと、他に良い方法
がありそうかな?と思いますが。。。

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:A5")) Is Nothing Then
Exit Sub
Else
Application.EnableEvents = False
with target.cells(1,1)
Select case .value
Case "田中太郎"
.value = 1
Case "田中二郎"
.value = 2
Case "田中三郎"
.value = 3
Case "田中四郎"
.value = 4
Case "田中五郎"
.value = 5
Case Else
.value = 0
End Select
End With
Application.EnableEvents = Ture
End If
End Sub

下記リンク先のコードを参考にさせて貰いました。
https://www.moug.net/tech/exvba/0050131.html
    • good
    • 0
この回答へのお礼

ありがとうございます!
試してみたのですが、これだとA1セルのみしか反映されてない状態です。
なにか原因として考えられる部分はありますか?

お礼日時:2021/10/13 18:15

自身のセルに対する関数を自身のセルに帰す、


と言う事はあり得ません。
それを循環関数、といます。
    • good
    • 0

Google スプレッドシートでも良い?

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング