
No.2ベストアンサー
- 回答日時:
こんにちは。
返事が遅くなってしまいました。
>入力規則だとデータ入力する際にコピーペーストされると適用外になってしまうため、おっしゃるようにマクロの方がいいのかもしれません。しかし、やり方がわからず・・・
このマクロ自体は、思っていたよりもてこずってしまいました。あまり、うまい出来栄えではないとは思いますが、コピーペーストも禁止できます。使用勝手は、入力規則とほぼ同じです。
考え方は、dreamconさんが、特殊文字は個々で入れるという方法を使いました。
取り付け方は、シートタブを右クリックして、「コードの表示」をクリック。
次に、以下を貼り付けます。
入力規則の指定する場所に、Range("A:A") と、範囲を入力します。
複雑な範囲の場合は、例えば、このようにします。Range("A1:A10,B1:B2")
全体の場合を設定したい場合は、If Intersect ... の行そのものを削除します。
'------------------------------------------------
Dim KinshiMoji As Variant
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
Dim msg As String
'以下は、A列のみに、入力規則を施しています。
If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
On Error GoTo ErrMsg
If IsEmpty(Target) Then Exit Sub
Application.EnableEvents = False
If Len(KinshiMoji) < 1 Then Call MakingMoji
For Each c In Target.Cells
If Len(c.Text) > 20 And c.Value <> "" Then _
msg = "入力した値は20文字以上です。": Err.Raise 513
If c.Text Like "*[" & Chr(&HA6) & "-" & Chr(&HDF) & "]*" Or _
c.Text Like "*[" & KinshiMoji & "]*" Then
msg = "入力した値は正しくありません。": Err.Raise 513
End If
Next
Application.EnableEvents = True
Exit Sub
ErrMsg:
If MsgBox(msg & vbCrLf & vbCrLf & _
"ユーザーの設定によって、セルに入力できる値が制限されています。", _
16 + vbRetryCancel) = vbRetry Then
c.Select
Application.SendKeys "{F2}"
Else
Target.ClearContents
End If
msg = ""
Application.EnableEvents = True
End Sub
Private Sub MakingMoji()
'禁じする文字を作ります。
Dim i As Long
For i = &H8740 To &H878F
KinshiMoji = KinshiMoji & Chr(i)
Next
End Sub
'------------------------------------------------
今オフィスのエクセル素人集団を集めて実験しましたところ、完璧です!!みな「おおーーー」と歓声を上げました!
本当に、本当にありがとうございます!早速使わせていただきます!
No.1
- 回答日時:
こんにちは。
考えてみました。元のご質問の内容が、揺らいでいるようですが、「20文字以内」「半角カタカナ」「機種依存する特殊文字不可」
というなら、おそらく、半角の数字とアルファベットは許可していると読みました。
=AND(LEN(A1)<=20,SUM((CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))>165)*(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<224)+(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))>11552)*(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<11633))=0)
私個人としては、イベントドリブン型のマクロ処理のほうがよいような気がします。
ありがとうございます!確かに入力できず、いい感じです!
ただ、入力規則だとデータ入力する際にコピーペーストされると適用外になってしまうため、おっしゃるようにマクロの方がいいのかもしれません。しかし、やり方がわからず・・・(エクセル初級)。
どこに何をすればいいのかもしよろしければ教えてください。よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Access(アクセス) capeofdragonと申します。 Access2016を使っております。 あるフォームがあり、テ 2 2022/09/09 13:18
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
- その他(ソフトウェア) ソースネクストアプリをインストールし、製品登録で半角英数字が入力できない 5 2022/07/03 22:44
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Excel(エクセル) セルに入力した小文字アルファベット、数字を大文字表示させるには? 3 2022/07/13 10:01
- 大学・短大 学生ローン日本学生機構の奨学金について詳しい方教えて下さい。 保証人の職場にパソコンから株式会社○○ 1 2022/04/13 05:57
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルでワークシート内に半角カタカナを入力させない方法
Excel(エクセル)
-
エクセルの入力規則で半角英数字と一部記号のみ許可
Excel(エクセル)
-
Excel 条件によって入力禁止にする
Excel(エクセル)
-
-
4
Excelで入力禁止文字を設定したい
その他(ソフトウェア)
-
5
エクセルで英数大文字のみの入力制限は可能ですか
Excel(エクセル)
-
6
入力規則でスペース入力を禁止する方法
その他(コンピューター・テクノロジー)
-
7
エクセルでセルの中身が漢字かどうか識別する方法は?
Excel(エクセル)
-
8
エクセルで小文字入力不可にする方法について
Excel(エクセル)
-
9
エクセルでアルファベットか数値の判定をしたいのですが
Excel(エクセル)
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの関数について
-
エクセルの複雑なシフト表から...
-
エクセルのリストについて
-
【マクロ】元データと同じお客...
-
【画像あり】オートフィルター...
-
【マクロ】【相談】Excelブック...
-
【マクロ】変数に入れるコード...
-
エクセルシートの見出しの文字...
-
【マクロ】別ファイルへマクロ...
-
Office2021のエクセルで米国株...
-
【マクロ】数式を入力したい。...
-
【マクロ】実行時エラー '424':...
-
エクセルのVBAで集計をしたい
-
他のシートの検索
-
【マクロ】左のブックと右のブ...
-
Amazonでマイクロソフトオフィ...
-
vba テキストボックスとリフト...
-
【マクロ】【配列】3つのシー...
-
【マクロ】列を折りたたみ非表...
-
【マクロ】オートフィルターの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ドロップダウンリスト 自動表...
-
Excelについて
-
autocad 数値が表示されなくな...
-
VBAの日付チェックでオーバーフ...
-
エクセルで半角カナや特殊文字...
-
マクロ 入力規則は残し文字の...
-
excelのInputBoxで日本語入力OF...
-
ドロップダウンリストを2列で...
-
エクセルVB ポップアップウィ...
-
エクセル 日付超過でポップアッ...
-
求人情報で「SAP入力可能な方」...
-
小数点以下の入力規則
-
pdfの文字入力で一文字ずつしか...
-
excelで第二金曜日を…
-
EXCEL VBAの入力規則で小数点桁...
-
アクセス2000 クエリ抽出でBet...
-
エクセルで入力規則(リスト)...
-
Excelで日報を自動で作成したい...
-
弥生会計05、「摘要」入力について
-
【スプレッドシート】時間入力...
おすすめ情報