• ベストアンサー

A列の文字列によってB列への入力を変える

こんにちは。マクロ初心者で、質問なのですが、 エクセルで、A列に入力されている文字列によって、 B列文字を自動で入力するマクロを作成したいのですが、 どのように記述すればよいでしょうか? 例: A列 |B列 |  あ | 01 |A列「あ」の場合、B列の同じ行に「01」  い | 02 |A列「い」の場合、B列の同じ行に「02」 といった感じです。 初歩的な質問で申し訳ございませんがご教授願います。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

意味がわかりませんが,このマクロではダメだと言うことですね。 #参考 A列にデータ記入済みのシートに,回答の通りにマクロを取り付ける A列のデータをコピーし,その場で貼り付ける と,A列のデータを再入力したことになりマクロが実行される 以後はA列を編集する都度,直ちにB列に反映する >マクロの実行をおこなってからマクロが動作する方がありがたかったです やることは一緒なので,あとはあなたが実際にヤリタイコトに応じて適切に応用してください。 手順: 前回回答のマクロを全て漏れなく消去する 改めてALT+F11でVBE画面を出す 挿入メニューから標準モジュールを挿入する 現れたシートに下記をコピー貼り付ける sub macro1()  dim h as range  on error resume next  for each h in application.intersect(activesheet.usedrange, range("A:A"))  select case h.value  case "あ"   cells(h.row, "B") = "'01"  case "い"   cells(h.row, "B") = "'02"  case else   cells(h.row, "B").clearcontents  end select  next end sub ファイルメニューから終了してエクセルに戻る マクロを実行する。

Knyako
質問者

お礼

お手数おかけして申し訳ございません。 大変勉強になりました。 ご回答ありがとうございます。 ベストアンサーに選ばせていただきます。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

シート名タブを右クリックしてコードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub Worksheet_Change(byval Target as excel.range)  dim h as range  on error resume next  for each h in application.intersect(target, range("A:A"))  select case h.value  case "あ"   cells(h.row, "B") = "'01"  case "い"   cells(h.row, "B") = "'02"  case else   cells(h.row, "B").clearcontents  end select  next end sub ファイルメニューから終了してエクセルに戻る A列に記入する。

Knyako
質問者

お礼

ご回答いただきありがとうございます。 しかし、シートにA列のデータが入力されている状態から B列を入力したいので、マクロの実行をおこなってから マクロが動作する方がありがたかったです。 ご回答いただきありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A