• ベストアンサー

指定されたセルに文字を入力したら自動で大文字VBA

エクセルVBAの質問です。 セルD10とD25に小文字の英数字を入力したら自動で大文字の英数字にするVBAはどの様にすれば宜しいでしょうか? (例) hhc-345→HHC-345     kUxR-678→KUXR-678     

noname#247334
noname#247334

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

シートモジュールに以下を貼付けお試しください。 Private Sub Worksheet_Change(ByVal Target As Range)   If Intersect(Target, Range("D10,D25")) Is Nothing Then Exit Sub   On Error GoTo ErrorHandler   Application.EnableEvents = False   Target.Value = UCase(Target.Value) ErrorHandler:   Application.EnableEvents = True End Sub

noname#247334
質問者

お礼

ありがとうございました。 無事に解決出来ました。

その他の回答 (1)

  • skp026
  • ベストアンサー率45% (1011/2238)
回答No.1

以下は文字変換するVBAサンプルです。 http://www.moug.net/tech/exvba/0140027.html 以下はVBAではなく式で行う方法です。 https://dekiru.net/article/12567/ 入力規則を使って入力できないようにするのも方法のひとつです。 http://www.excel-jiten.net/data_validation/two_byte_char_only.html

noname#247334
質問者

お礼

ありがとうございました。 勉強にまりました。

関連するQ&A

  • 特定のセルに文字入力すると左端に「・」を自動表記

    エクセル2003を使用しています。 セル”E3~E128”と”I3~I128”の範囲で何か文字を入力すると、入力した文字の左端に自動で「・」を付けるVBAは、どの様にすれば良いのでしょうか。 例としてセルE3に「2015年」と文字を入力すると自動で「・2015年」と表記される感じです。

  • 空白のセルの場合は同じ文字を入力するVBA

    (1)セルL5・L6・L23・L24・L25があります。 上記で述べたセル範囲の文字が空白表示の場合、上記範囲の何処かに文字を入力したら、入力した文字と一緒の文字が自動で入力させます。(例えばL24に「1」と入力した場合はL5・L6・L24・L25に「1」と自動で入力) そして上記で述べたセル範囲の何処か1つでも文字が入っていると、文字が自動で入力されない(例えばL5に「3」と入力されている状態でL25に「8」と入力してもL6・L23・L24の文字は何も変化しない)VBAはどの様にすれば良いでしょうか? (2)セルM5・M6・M23・M24・M25があります。 上記で述べたセル範囲の文字が空白表示の場合、上記範囲の何処かに文字を入力したら、入力した文字と一緒の文字が自動で入力させます。(例えばM24に「1」と入力した場合はM5・M6・M24・M25に「1」と自動で入力) そして上記で述べたセル範囲の何処か1つでも文字が入っていると、文字が自動で入力されない(例えばM5に「3」と入力されている状態でM25に「8」と入力してもM6・M23・M24の文字は何も変化しない)VBAはどの様にすれば良いでしょうか? (3)セルL8~L10の範囲があります。 上記で述べたセル範囲の文字が空白表示の場合、上記範囲の何処かに文字を入力したら、文字が自動で入力させます。(例えばL9に「1」と入力した場合はL8・L10に「1」と自動で入力) 上記で述べたセル範囲の何処かに既に文字が入っていると、文字が自動で入力されない(例えばL10に「3」と入力されている状態でL8に「8」と入力してもL9の文字は何も変化しない)VBAはどの様にすれば良いでしょうか?

  • あるセルに特定の文字列を打つと、他のセルに決められた文字が自動入力するように

    お世話になります。 表題の通り、 あるセルに特定の文字列を打つと、 他のセルにあらかじめ決められた文字が自動入力するようにしたいです。 具体的に言うと、 (1)セル(A,1)に「キリン」と打ち込むと    A   B   C   D 1 キリン 2 3 4 (2)1列目の B,C,Dに予め決めておいた文字が入力されるようにしたい    A   B   C   D 1 キリン 首  長い  アフリカ 2 3 4 のです。 エクセルで可能でしょうか? 詳しい方よろしくお願いいたします!

  • VBA 文字が入力されているセルを表示させたい

    ExcelのVBAで 列番号"A列"に文字を適当に打った時 文字が入っている最終セル(行番号)と その最終セルに入っている文字を "C1"のセルに表示させる というVBAを作成したいのですガ… どなたかわかる方教えて下さい 自分が考えたものはVBAが妙に長くなってしまい; Excelのバージョンが2000と古いので 古いのでも動くVBAだと助かります; 宜しくお願いします

  • Excel 隣のセルの頭文字に応じて文字を自動入力

    Excelの質問です。 隣のセルに入力された文字列の頭の文字に応じて、セルに自動的に文字を入力するにはどうすればよいのでしょうか?関数初心者です。 具体的には、 A1のセルに「T○○○○○」(○は任意の数字)が入力されていれば、頭文字がTなので、B1のセルに東京と自動的に表示する。 A2のセルに「N○○○○○」(○は任意の数字)が入力されていれば、頭文字がNなので、B2のセルに長野と自動的に表示する。 です。 よろしくお願いします。

  • セルの文字式の計算をVBAで行いたい

    A1のセルに "100+5n" という文字式が入っている状態で VBAにてこのセルの文字式計算を行いB1のセルから順に結果を出力したいと思っています。 "n"は1から順に指定された数まで1づつ増えていくようにし B1のセル:105、C1のセル:110、D1のセル:115 ・・・・ と結果がなるようにしたいのですが、VBAでどのように記述すればいいのか悩んでいます。 VBAを使わずにExcelの関数で計算できるのならそれでもよいと思っています。

  • エクセル VBA 飛ぶセルの自動連番のつけ方

    エクセル VBA で添付画像のように1枚に30までの自動連番、 セルに1~150と入力すれば自動採番で5枚印刷できるような VBAをご教示下さい。 番号は001のような3ケタの場合でお願いします。

  • エクセルのマクロで入力文字を一文字ずつ並んだセルに入れる

    エクセルマクロ超初心者です。 エクセルVBAでユーザーフォームを作成しました。 テキストボックスに入力した文字列を「登録」ボタン押下後、エクセルシートのセルに一文字づつ入るようにするにはどうすれば良いでしょうか? 例えばテキストボックスに「kohiro」と入力するとエクセルのsheet1のA1「k」、B1「o」、C1「h」、D1「i」、E1「r」、F1「o」となるようにしたいのです。入力する文字数は0~30文字までで、その都度長さは変わります。どうやって、文字をばらせばいいのか、またどうやって可変長の文字列を指定したセルに入力すればいいのかわかりません。どうかよろしくお願いいたします。

  • エクセルでセルに入力した文字を自動で全部表示するには?

    よろしくお願いします。 エクセルでセルに入力した文字を自動で全部表示させたいと思っています。 セルから少しはみ出す文字を複数入力していくためです。 ご存知の方いらっしゃいましたらよろしくお願いします。

  • VBA セルに入力されている数値でセルを指定する

    Excel VBA初心者です。 Sheet1のA1セルに10、A2セルに3を入力しています。 この入力したセルの数値を参照して、 Sheet2の「Cells(10,3)」(C10セル)を青(Interior.ColorIndex = 5)に 書式変更したいのですが、「Cells(”Sheet1.A1の値”,”Sheet1.A2の値”)」の 書き方がわかりません。 Excel2010を使用しています。 よろしくお願いします。

専門家に質問してみよう