- 締切済み
ある数値を入力したらエラーを表示させるようにしたいのですが。
Excel2000を使用しています。 あるリストの数値を入力すると、 エラーが表示される設定をしたいのですが上手くいきません。 どなたかご存知の方教えて頂けますか?? リスト内の数値は下記のような感じです。 1111110000000000~2222229999999999 4444440000000000~5555559999999999 7777770000000000~8888889999999999 ・ ・ ・ 上記のリストを作成するとデータ量が多くなってしまう為、 先頭から6桁目までを判断の基準にして、 『リスト内の数値であれば赤で表示する』 という感じにしたいのですが。。。 例:入力する(1111110000000001) 6桁までをリストから検索(111111) リスト内にあれば赤で入力した数値を表示させる リスト内になければそのまま。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- nishi6
- ベストアンサー率67% (869/1280)
Sheet1で行う例です。 checkArea で指定したセル範囲に入力を行った場合、値のチェックをします。 ただし、数値の"2222229999999999" などは有効桁の関係で入力できないような気がしますが・・・ ALT F11 でVBE画面に移り、Sheet1のコードウインドウに貼り付けます ↓ Const checkArea = "C2:C21" 'この範囲のセルをチェックする例 Private Sub Worksheet_Change(ByVal Target As Range) Dim chkFlg As Boolean If Target.Count = 1 Then If Not Application.Intersect(Target, Range(checkArea)) Is Nothing Then '変更セルが指定セル内にあれば Select Case Target.Value '値のチェック Case Val("1111110000000000") To Val("2222229999999999"): chkFlg = True Case Val("4444440000000000") To Val("5555559999999999"): chkFlg = True Case Val("7777770000000000") To Val("8888889999999999"): chkFlg = True 'Case ・・・・・必要なら追加して下さい 'Case ・・・・・ End Select '文字色を操作する If chkFlg = True Then Target.Font.ColorIndex = 3 '赤 Else Target.Font.ColorIndex = xlAutomatic End If End If End If End Sub