
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で質問しましょう!
似たような質問が見つかりました
- ソースネクストアプリをインストールし、製品登録で半角英数字が入力できない
- Excel 365 フリーズ 頻発 エクセルのセルの中に日本語の文章を全角半角和文英文数字を混ぜて入
- Macにおける全角・半角の切り替え(自動のそれの停止)
- capeofdragonと申します。 Access2016を使っております。 あるフォームがあり、テ
- exel 漢字・英数字混在セルの入力規則
- セルに入力した小文字アルファベット、数字を大文字表示させるには?
- EXCELでの文字・数字入力の基本について教えてください。
- 新しい中国語入力ソフトを発明しました
- Accessのテキストボックスの入力文字制限
- エクセルVBAについて
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
入力規則をK(半角大文字)またはk(半角小文字)に制限するユーザー設定の数式を教えてください
Excel(エクセル)
-
EXCELで大文字入力
Excel(エクセル)
-
エクセルの入力規則で半角英数字と一部記号のみ許可
Excel(エクセル)
-
-
4
エクセルで小文字入力不可にする方法について
Excel(エクセル)
-
5
エクセルでアルファベットか数値の判定をしたいのですが
Excel(エクセル)
-
6
エクセルで小文字が大文字になる。
Excel(エクセル)
-
7
CapsLockを特定の部分だけオンにする
Excel(エクセル)
-
8
セルの入力を半角数字8桁のみ入力したい
Excel(エクセル)
-
9
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
10
Excel 条件によって入力禁止にする
Excel(エクセル)
-
11
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
12
自分の部署・担当を言うとき、どういう言い方が正しいでしょうか?? 会社のときは、弊社といいますが、部
その他(ビジネス・キャリア)
-
13
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
14
エクセル 入力規則設定方法
Excel(エクセル)
-
15
Excelで入力禁止文字を設定したい
その他(ソフトウェア)
-
16
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
17
Excel VBA あるセルでENTERを押すと特定のセルへ移動したい
Excel(エクセル)
-
18
入力規則で半角数字のみ受け付ける方法
Windows Vista・XP
-
19
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
-
20
エクセルのセル内に全角数字を入力したいのにエンターを押すと自動で半角になってしまいます。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで英数大文字のみの入...
-
Excelが勝手に閉じてしまって困...
-
マンション名のローマ数字入力...
-
Excelにて入力済セルへの再入力...
-
エクセルVBAでTargetのセルに設...
-
Apple IDの作成ができない。「...
-
初歩的なことなんですが。produ...
-
inputとenterの違い
-
エクセルVBA、入力しないと閉じ...
-
パソコンの入力がアルファベッ...
-
Excel:長い文字列が途中で切れる
-
【キーボード】母音しか打てない…
-
最大値のあるセルの行番号のみ...
-
エクセルで10進法から60進法に...
-
Windows10 IME 変換候補の順番...
-
Excelで数値を右詰めでセルに一...
-
エクセルで作った表を丁度いい...
-
「BIOSの稼動時間」とは何のこと??
-
ExcelからPDF文書の特定ページ...
-
動画全画面再生してもタスクバ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで英数大文字のみの入...
-
マンション名のローマ数字入力...
-
以前使ってたYahooアドレスがロ...
-
Excelが勝手に閉じてしまって困...
-
inputとenterの違い
-
エクセルVBAでTargetのセルに設...
-
Apple IDの作成ができない。「...
-
認証コードが入力できない(同...
-
エクセル 時間を.(ドット)で...
-
初歩的なことなんですが。produ...
-
左向きにエクセルで作成され申...
-
Excelにて入力済セルへの再入力...
-
住信SBIネット銀行 受取人...
-
ifで10個以上の条件判断がしたい
-
エクセルVBA、入力しないと閉じ...
-
ワードでの音声入力
-
長音「ー」の入力方法
-
gnuPGでパスフレーズが入力でき...
-
ACCESSでNumLockがONの時データ...
-
Windows 10で日本語の音声入力...
おすすめ情報