過去ログ

                                Page     608
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼元に戻したいのです。  こだま 03/1/24(金) 22:29
   ┗Re:元に戻したいのです。  ポンタ 03/1/24(金) 22:42
      ┗Re:元に戻したいのです。  こだま 03/1/24(金) 23:40

 ───────────────────────────────────────
 ■題名 : 元に戻したいのです。
 ■名前 : こだま
 ■日付 : 03/1/24(金) 22:29
 -------------------------------------------------------------------------
   こんばんわ。教えてください。

ワークシート上で何か間違えた値を入力し、A1のセルに#REF!が出れば、ISERR関数を使ってA2のセルに1が立つようにするとします。

それを常時監視して、A2に1が立てば即”元に戻す”を実行するマクロを組めませんでしょうか?

よろしくお願いします。
 ───────────────────────────────────────  ■題名 : Re:元に戻したいのです。  ■名前 : ポンタ  ■日付 : 03/1/24(金) 22:42  -------------------------------------------------------------------------
   シートモジュールに貼り付けてお試しください。

テストの結果、うまく動いたら、

MsgBox ("アンドゥしました")

は削除しても構いません。

Private Sub Worksheet_Calculate()
  If Me.Range("A2").Value = "1" Then
    Application.Undo
    MsgBox ("アンドゥしました")
  End If
End Sub
 ───────────────────────────────────────  ■題名 : Re:元に戻したいのです。  ■名前 : こだま  ■日付 : 03/1/24(金) 23:40  -------------------------------------------------------------------------
   ▼ポンタ さん:
早速のご回答、ありがとうございます。

うまくいきました。
シートモジュールというものがあったんですね。
大変勉強になりました。

どうもありがとうございました。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 608