目次

目的

  • 直前の操作を元に戻す(Undo)。
  • 直前の操作を繰り返す(Repeat)。
  • マクロで実行した操作は対象外。

私が Repeat メソッドの正しい使用方法を分かっておらず、エラーが発生した状態で終わっていますが、良ければご覧ください。

目次まで戻る

その一例

  1. Excel 起動直後にテストしてみます。
    Excel 起動直後。
    Excel 起動直後。
  2. Excel 起動直後は操作を行っていないので、元に戻す、繰り返しは押せないようになっています。
    元に戻せません。繰り返しできません。
    元に戻せません。繰り返しできません。
  3. A1:A3 に A,B,C と入力してみます。マウス、キーボードで行いました。
    A,B,C を入力しました。
    A,B,C を入力しました。
  4. 「元に戻す」が押せるようになっています。この状態で Undo を使用したマクロを実行してみます。
    セル A3 への 'C' の入力
    セル A3 への 'C' の入力
  5. Undo を使用したマクロです。実行してみます。
    Sub Undo元に戻す()
    Application.Undo
    End Sub
    1. 実行結果は以下のようになりました。
      C の入力が取り消されている。
      C の入力が取り消されている。
    2. この時、「やり直し」が行える状態になっていました。上記までは「繰り返し」となっていた項目です。この状態で Repeat を使用したマクロを実行してみます。
      やり直し
      やり直し
  6. Repeat を使用したマクロを実行してみます。
    Sub Repeat繰り返す()
    Application.Repeat
    End Sub
    1. A3 に C が入力されると思っていましたがエラーが発生してしまいました。
      実行時エラー '1004' 'Repeat' メソッドは失敗しました。'_Application' オブジェクト
      実行時エラー '1004' 'Repeat' メソッドは失敗しました。'_Application' オブジェクト
      エラー発生行。
      エラー発生行。
    2. 「Ctrl+Y」キーを押すと、 C の入力が元に戻りました。 C の入力が最後の操作なので更に「Ctrl+Y」は出来ないようです。
      C が戻っている。
      C が戻っている。
      繰り返しできません
      繰り返しできません
  7. 上記までは、セルに文字を入力してテストを行いましたが、次は、操作の種類を変えてテストしてみます。ワークシートに図形を描画して、その操作の Undo,Repeat を行ってみます。
    楕円を描画してみます。
    楕円を描画してみます。
    楕円を描画しました。
    楕円を描画しました。

    この時、元に戻す、繰り返しは以下のようになっていました。

    元に戻す、繰り返し。オートシェイプの挿入。
    元に戻す、繰り返し。オートシェイプの挿入。
  8. Undo のマクロを実行してみます。
    Sub Undo元に戻す()
    Application.Undo
    End Sub
    1. 実行結果は以下のようになりました。
      オートシェイプ描画前に戻りました。
      オートシェイプ描画前に戻りました。
  9. Repeat のマクロを実行してみます。
    Sub Repeat繰り返す()
    Application.Repeat
    End Sub
    1. 実行結果は以下のようになりました。
      オートシェイプが描画されました。 Repeat 出来たようです。
      オートシェイプが描画されました。 Repeat 出来たようです。
    2. Repeat のマクロをもう一度実行してみました。
      オートシェイプ挿入の操作が繰り返されている。
      オートシェイプ挿入の操作が繰り返されている。
    3. 更に三、四回実行してみました。
      オートシェイプを挿入した操作が繰り返されている。
      オートシェイプを挿入した操作が繰り返されている。

文字の入力の Repeat は出来ていないままですが、ご覧いただきありがとうございました。

テスト環境

  • Windows 10(64 ビット)
  • Microsoft Office Excel 2003

以上、閲覧ありがとうございました。

目次まで戻る

同じカテゴリの投稿(Excel VBA)

前後の投稿