[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『日本語のみ入力可能』(ただし)
日本語だけでなく全角という制限ですが、 A1:C10 を選択し、データの入力規則で =A1=JIS(A1) ではだめでしょうか。 全角英数も NG となると、ちょっと条件が面倒そうです。
いっそ VBA の方が楽かな? (Mook)
日本語のみ、じゃないけど半角英数で入力された部分は削除
シートモジュールへ
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range
If Intersect(Target, Range("a1:c10")) Is Nothing Then Exit Sub
Application.EnableEvents = False
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[\w\!""#$%&'\(\)=~\^|\\@\{\}\[\]\+\*;:<>\?/\\,\.\-]"
For Each r In Intersect(Target, Range("a1:c20"))
r.Value = .Replace(r.Value, "")
Next
End With
Application.EnableEvents = True
End Sub
(seiya)
=CODE(A1)>9007
※セルの表示形式を「文字列」にしといたほうがいいね
(GobGob)
GobGob さん、いつもエレガントな回答を参考にさせてもらってます。 CODE って先頭の文字が対象だと思うのですが、文字列全体を制限する式も出来るでしょうか。 (Mook)
>CODE って先頭の文字が対象だと思うのですが、文字列全体を制限する式も出来るでしょうか。
あっ。。。。そうでした!w。
=SUM(CODE(MID(A1&REPT("ぁ",1024),ROW($1:$1024),1)<9249)*1)=0
※無理矢理w。
(GobGob)
↑ 1.括弧がおかしくないですか?
2.ちょっと前は「ぁ」以上かどうかで判断する式で、成程と思ったのですが、 何故、現在の式に修正したのですか?
(半平太) 2013/05/24(Fri) 14:56
>1.括弧がおかしくないですか?
あらホント! スンマセン。
=SUM((CODE(MID(A1&REPT("ぁ",1024),ROW($1:$1024),1))<9249)*1)
>2.ちょっと前は「ぁ」以上かどうかで判断する式で、成程と思ったのですが、 > 何故、現在の式に修正したのですか?
半角カタカナがどうもうまく機能してないようなもんで。 読み仮名で大小判断してるのかな?
(GobGob)
> 半角カタカナがどうもうまく機能してないようなもんで。 > 読み仮名で大小判断してるのかな?
そうでしたか。
私の環境では→Win7,XL2010、 以前の数式(*1)の方が正しい結果を出すと思っているのですけど。
もっとも、何が日本語なのかの解釈にもよります。 私は、半角「ア」や「佐々木」は日本語と思っています。
行 ___A___ _____B_____ ___C___ ____D____ 1 振りがな ぁ以上 9249以上 2 ア ア TRUE FALSE 3 ア ア TRUE TRUE 4 佐々木 ササキ TRUE FALSE 5 打者3人 ダシャ3ニン FALSE FALSE
*1 {=SUM((MID(A2&REPT("ぁ",1024),ROW($1:$1024),1)<"ぁ")*1)=0}
(半平太) 2013/05/24(Fri) 16:41
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.