• ベストアンサー

Excel入力時、特定の列の記号を半角にしたい

いつもお世話になっております。 Excel2013で例えば 「あいうえおabc123()+=,」などと入力するとき、うっかり全角が混入して 「あいうえおabc123()+=、」などとなってしまいます。 自動的に英数字と記号が半角になるようにはできないでしょうか。 調べると列全体を半角しか入力できないようにするやり方はあったのですが・・・

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

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

>自動的に英数字と記号が半角になる そういう機能は無いので、無理矢理エクセルにやらせます 【簡易なお試し版】 手順: シート名タブを右クリック、コードの表示を選ぶ 現れたシートに下記をコピー貼り付ける 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("C:C")) ’仮にC列   application.enableevents = false   h = strconv(h, vbnarrow)   application.enableevents = true  next end sub ファイルメニューから終了してエクセルに戻る 仮にC列に言葉を記入する。 #あれはしたいけどこれはしたくないみたいにもっと手の込んだワープロ機能を盛り込みたければ、更に手の込んだマクロを頑張って作成し利用します。 必要に応じて具体的にヤリタイ事ややって欲しくない事を細かくリストアップして、新しいご相談として別途投稿してみて下さい。親切な人が誰か作ってくれるかもしれません。

emozilla
質問者

お礼

おおお!できました!ありがとうございます! ほんと助かりましたm(_ _)m 自力でこんなコードを書けるようになりたいです!

その他の回答 (1)

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

自動的に英数字と記号が半角になるようにはできないですが、うっかり全角を混入して入力した場合に、エラーが出てそのデータを入力できないようにするには、データの入力規則に、ユーザー設定で、以下の数式を入力してみてください。 =IF(A1=ASC(A1),TRUE,FALSE) ちなみに、そのセル(A1)にうっかり全角を混入して入力した場合に、自動的に別のセル(B1)に英数字と記号が半角で表示されるようにするには、B1セルに、以下の数式を入力してみてください。 =ASC(A1)

関連するQ&A