No.7ベストアンサー
- 回答日時:
再度のチャレンジです。
セルA1にこれを入れてみてください。
1.「入力規則」-「ユーザー設定」-「数式」-「=EXACT(UPPER(A1),A1)」
2.日本語コントロールを半角英数
これが精一杯の方法だと思います。
これで
ABC←可 Abc←不可 abc←不可 AbC←不可
英数が完全に大文字でないと入力できないようになりました。
数字、半角カナも入力できます。
これも制限する場合はまた検討します。
何度もトライしていただきありがとうございました。
入力時に自動的に大文字になることは不可能のようですね。
上記方法を採用させていただきます!助かりました。
No.6
- 回答日時:
入力規則と同じような機能を作ってみました。
参考程度に見てください。入力規則のユーザー設定には余り複雑な算式は設定できないみたいですね。
入力した文字全部が小文字かどうかを判定するセル用の関数を作って登録しましたが、『入力規則には、OR演算、AND演算、配列定数は使用できません。』が出てしまいました。
ユーザー定義関数を作って、その結果を入力規則に使用した結果、うまく動きますが、入力セルに対し判定セルが必要になります。
下では、入力規則と(ほぼ)同じ機能のマクロです。判定用のセルは不要にしています。判定はより複雑にできます。
入力規則の日本語入力の『半角英数字』などは、全角でも入力できたと思いますが、下では不可にしています。
判定するなら、『小文字→大文字』、『全角→半角』などの自動変換も簡単にできる事になります。マクロの最後に参考に書いています。
Sheet1で行う例です。
ツール→マクロ→Visual Basic Editor でVBE画面に移り、表示→プロジェクトエクスプローラでプロジェクトエクスプローラを表示し、Sheet1をダブルクリック。
出てきたコードウインドウに下記マクロをコピーして貼り付けます。
Const 入力規則 = "B2:D20" の行に入力規則を適用する実際の範囲を設定します。
ここから
↓
Const 入力規則 = "B2:D20" '入力規則範囲(***自分で設定します***)
'エラーメッセージ
Const erMsg1 = "入力した値は正しくありません。" & vbCrLf & vbCrLf
Const erMsg2 = "ユーザーの設定によって"
Const erMsg3 = "セルに入力できる値が制限されています。"
'複雑、煩雑な入力規則を行う例。
' Excelの機能では、
' 『条件データの入力規則には、OR演算、AND演算、配列定数は使用できません』
' のメッセージがでて、余り複雑な入力規則は設定できない。
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim erMsg As String '入力エラーメッセージ
erMsg = erMsg1 & StrConv(erMsg2, vbNarrow) & "、" & StrConv(erMsg3, vbNarrow)
Dim moji As String, elm As String '入力文字、入力文字の1文字
Dim L As Integer 'カウンタ
Dim chkFlg As Boolean 'エラーチェックフラグ
chkFlg = True
If Target.Count = 1 Then
If Not Intersect(Range(入力規則), Target) Is Nothing Then
moji = Target.Text
For L = 1 To Len(moji)
elm = Mid(moji, L, 1)
If Abs(Asc(elm)) < 256 Then
Select Case Asc(elm)
Case 97 To 122
'入力が誤りのケース
chkFlg = False: Exit For
Case Else
'入力が正しいケース
End Select
Else
'入力が誤りのケース
chkFlg = False: Exit For
End If
Next
End If
End If
'入力後の処理
If chkFlg = False Then
If MsgBox(erMsg, vbRetryCancel + vbCritical) = vbRetry Then
'Target = StrConv(moji, vbNarrow + vbUpperCase) '半角大文字にしてしまう
Target.Select '再試行
Else
Target = "" 'キャンセル
Target.Select
End If
End If
End Sub
No.5
- 回答日時:
説明が不足してましたので追加しますね。
1.日本語入力を半角英数にします。
2.入力規則をユーザー設定にします。
3.数式のところに
「=(CODE(UPPER(A1))=CODE(A1))」←セルA1の時
を入力します。
(ここで数式エラーになりますがそのまま続けるにしてください)
4.入力規則(英数半角大文字)したいところにコピーします。
5.入力規則違反のとき大げさな表示がでるので入力時メッセージやエラーメッセージも合わせて入力しておくと親切だと思います。
ただし、この方法は文字列の先頭文字だけの大文字入力規制ですので文字列全体を大文字入力規制にすることはできないですね。
例:ABC←入力可 abc←入力不可 Abc←入力可(これはNGですよね?)
でも半角大文字で入力する機転になるかもしれませんが…。
No.4
- 回答日時:
別の列が必要ですが、「=JIS(A1)」のように、JIS関数を使って、強制的に全角文字にしてしまい、入力者には勝手にさせる手も有りますよね。
No.3
- 回答日時:
たぶんこれで可能だと思いますよ。
1.入力規則をユーザー設定にします。
2.数式のところに
「=(CODE(UPPER(A1))=CODE(A1))」←セルA1の時
を入力します。
3.入力規則(英数半角大文字)したいところにコピーします。
これで大丈夫かと思いますよ。
ただ、入力規則違反のとき大げさな表示がでるので
入力時メッセージやエラーメッセージも合わせて入力しておくと親切だと思います。
ちょっと試してみてくださいね。
ちょっとイメージ違ったかな?
この回答への補足
アドバイスありがとうございます。残念ながら
「数式はエラーと思われます…」という表示が出て
やはり小文字でしか入力できません。
日本語入力オフの入力規則をしているからでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
初めて自分の家と他人の家が違う、と意識した時
子供の頃、友達の家に行くと「なんか自分の家と匂いが違うな?」って思いませんでしたか?
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
入力規則をK(半角大文字)またはk(半角小文字)に制限するユーザー設定の数式を教えてください
Excel(エクセル)
-
EXCELで大文字入力
Excel(エクセル)
-
エクセルの入力規則で半角英数字と一部記号のみ許可
Excel(エクセル)
-
-
4
エクセルで小文字入力不可にする方法について
Excel(エクセル)
-
5
CapsLockを特定の部分だけオンにする
Excel(エクセル)
-
6
エクセルで小文字が大文字になる。
Excel(エクセル)
-
7
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
-
8
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
9
入力規則でスペース入力を禁止する方法
その他(コンピューター・テクノロジー)
-
10
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
11
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
12
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
13
Excelの入力規則で2列表示したい
Excel(エクセル)
-
14
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
15
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
16
入力規則で半角数字のみ受け付ける方法
Windows Vista・XP
-
17
特定セルの内容を更新したら、その更新日を自動的に表示する方法について
Excel(エクセル)
-
18
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
19
EXCELで特定の文字列を入力→エラー表示したい
その他(Microsoft Office)
-
20
エクセル2010 グラフの軸の最大値最小値をセル参照する
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで英数大文字のみの入...
-
認証コードが入力できない(同...
-
マンション名のローマ数字入力...
-
Apple IDの作成ができない。「...
-
Excel 対象のセルに入力が無い...
-
ifで10個以上の条件判断がしたい
-
システムのプロパティがひらけ...
-
Excelにて入力済セルへの再入力...
-
gnuPGでパスフレーズが入力でき...
-
コマンドプロンプト表示が一瞬...
-
エクセルVBAでTargetのセルに設...
-
teratermでユーザー変更したい
-
エクセル 時間を.(ドット)で...
-
inputとenterの違い
-
タブレットPC文字入力の方法に...
-
ATOKでエクセルに入力できない
-
MS-DOSの使い方を教えてください。
-
文字が入力されたと思ったら、...
-
Excelが勝手に閉じてしまって困...
-
エクセルでセルに数字を入力す...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで英数大文字のみの入...
-
マンション名のローマ数字入力...
-
Excel 対象のセルに入力が無い...
-
認証コードが入力できない(同...
-
Apple IDの作成ができない。「...
-
inputとenterの違い
-
エクセルVBAでTargetのセルに設...
-
左向きにエクセルで作成され申...
-
Excelが勝手に閉じてしまって困...
-
エクセル 時間を.(ドット)で...
-
Excelにて入力済セルへの再入力...
-
VLOOKUP関数で返した値(カタカ...
-
ワードでの音声入力
-
エクセルVBA、入力しないと閉じ...
-
コマンドプロンプト表示が一瞬...
-
初歩的なことなんですが。produ...
-
gnuPGでパスフレーズが入力でき...
-
至急 奨学金のスカラネットで識...
-
システムのプロパティがひらけ...
-
ifで10個以上の条件判断がしたい
おすすめ情報