過去ログ

                                Page     708
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼セル入力内容をチェックしたいのですが・...  ばねっち 03/2/9(日) 13:41
   ┗Re:セル入力内容をチェックしたいのですが・...  りん 03/2/9(日) 14:09
      ┗Re:セル入力内容をチェックしたいのですが・...  ばねっち 03/2/9(日) 14:32

 ───────────────────────────────────────
 ■題名 : セル入力内容をチェックしたいのですが・...
 ■名前 : ばねっち
 ■日付 : 03/2/9(日) 13:41
 -------------------------------------------------------------------------
   どなたか良い方法があれば教えて下さい。。

1.セルに任意な値(例えば"○")を入力する(Enterキー押下)
2.その値が特定値(例えば"△")であれば、
  他のセルへ特定値(例えば"□")をセットする

つまり、
・Enterキーを押下した直後に処理を走らせる
・その処理が参照するセル範囲は、Enterキーが押下された1つのセルのみ
という具合にしたいのですが・・・
よろしくお願いします。
 ───────────────────────────────────────  ■題名 : Re:セル入力内容をチェックしたいのですが・...  ■名前 : りん <rin_doggie@hotmail.com>  ■日付 : 03/2/9(日) 14:09  -------------------------------------------------------------------------
   ばねっち さん、こんにちわ。

>・Enterキーを押下した直後に処理を走らせる
>・その処理が参照するセル範囲は、Enterキーが押下された1つのセルのみ
>という具合にしたいのですが・・・

WorkSheetのChangeイベントで対応しました。

該当するワークシートのタブの部分で右クリックして、『コードの表示』
以下のコードを記述すると、セルに○を入力するとそのセルの隣に■が出ます。

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  'イベント内でセルに値を与えることによってイベントが起きることを防ぐ
  Application.EnableEvents = False
  With Target
   'IV列以外の1個のセルが変更されたときだけ
   If .Count = 1 And .Column < 256 Then
     '値が○の時に右横に■を出す場合
     If .Value = "○" Then .Offset(0, 1).Value = "■"
   End If
  End With
  Application.EnableEvents = True
End Sub

こんな感じです。
シート上の全てのセルが対象です(IV列以外)。
 ───────────────────────────────────────  ■題名 : Re:セル入力内容をチェックしたいのですが・...  ■名前 : ばねっち  ■日付 : 03/2/9(日) 14:32  -------------------------------------------------------------------------
   りんさん、ありがとうございますっ!!
非常に参考になりました。
また何かありましたらよろしくお願いします。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 708