• 締切済み

ある数値を入力したらエラーを表示させるようにしたいのですが。

Excel2000を使用しています。 あるリストの数値を入力すると、 エラーが表示される設定をしたいのですが上手くいきません。 どなたかご存知の方教えて頂けますか?? リスト内の数値は下記のような感じです。  1111110000000000~2222229999999999  4444440000000000~5555559999999999  7777770000000000~8888889999999999           ・           ・           ・ 上記のリストを作成するとデータ量が多くなってしまう為、 先頭から6桁目までを判断の基準にして、 『リスト内の数値であれば赤で表示する』 という感じにしたいのですが。。。 例:入力する(1111110000000001)   6桁までをリストから検索(111111)   リスト内にあれば赤で入力した数値を表示させる   リスト内になければそのまま。 よろしくお願いします。

みんなの回答

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.3

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

  • NIWAKA_0
  • ベストアンサー率28% (508/1790)
回答No.2

タイトル見たとき[入力規則]かな、と思いましたが、 #1さんの言う通り[書式]→[条件つき書式]を使った方がよさそうですね。 ただ、条件つき書式の[数式が]であんまり条件を長々と書くのはちょっとツライので、 どっか横のほうに”条件に当てはまるかどうかを判定するセル”を作り、それを参照して判断させるのが良いかと。

  • taknt
  • ベストアンサー率19% (1556/7783)
回答No.1

入力する個所のセルを選択します。 書式、条件付書式の設定で OKとするセルの範囲を設定してみては いかがでしょうか?

関連するQ&A