戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
VBA でやり直しをやりたい。

    [194787] VBA でやり直しをやりたい。-

    ■親トピック/記事引用/メール受信=ON■

    □投稿者/ LGK -(2022/03/21(09:50))
    □U R L/

      Application.Undo
      で元に戻すボタンを押した状態にできますが、
      それの逆、やり直しボタンを押した状態にしたいのです。
      元に戻すボタンは必ず押してある前提で構いません。
      押してない場合の動作保証は無くてもいいです。




    [194788] Re[1]: VBA でやり直しをやりたい。-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/03/21(16:48))
    □U R L/

      もう一回UndoでReDoと同じ動きになります。
      取り消しの取り消し。




    [194789] Re[2]: VBA でやり直しをやりたい。-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ LGK -(2022/03/22(06:39))
    □U R L/

      こんな簡単にできるとは…
      しかし、逆に言えばUndo2回はできないのですね。
      ありがとうございます。




    [194791] Re[3]: VBA でやり直しをやりたい。-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/03/22(17:25))
    □U R L/
      ↓だったら一応前の前とか戻れます。
      ただし、マクロで何かの作業を行ったら
      それ以前の状態には戻れません。
      
      Sub test()
       SendKeys "^z", True
      End Sub
      
      ユーザーフォームに登録したコントロールに記述したら
      作動しませんでした。
      シェイプにマクロを登録したら作動しました。
      試してませんが、ショートカットキー(OnAction)でも
      いけるかもしれません。


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [194792] Re[4]: VBA でやり直しをやりたい。-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/03/22(17:40))
    □U R L/
      ブック起動時にショートカットキーえお設定します。
      Ctrl+U
      でひとつ前に戻ります。
      
      ※OnActionではなくOnKeyメソッドでした。
      
      'ThisWorkBookモジュール
      Private Sub Workbook_Activate()
        Application.OnKey "^u", "modori"
      End Sub
      
      Private Sub Workbook_Deactivate()
        Application.OnKey "^u"
      End Sub
      
      Private Sub Workbook_Open()
        Application.OnKey "^u", "modori"
      End Sub
      
      '標準モジュール
      Sub modori()
      SendKeys "^z", True
      End Sub


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [194793] Re[5]: VBA でやり直しをやりたい。-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/03/22(17:42))
    □U R L/

      よく考えたら(よく考えなくても)UnDoではなくReDo
      の方をやりたいのでしたね。




    [194794] Re[6]: VBA でやり直しをやりたい。-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/03/22(17:48))
    □U R L/

      やり直しは

      SendKeys "^y", True

      でいけました。
      一番最後までやり直ししたらブックを保存するか聞いてきました。
      理由は調べてません。




    [194795] Re[7]: VBA でやり直しをやりたい。-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/03/22(18:47))
    □U R L/

      >一番最後までやり直ししたらブックを保存するか聞いてきました。

      必ずそうなるわけではなさそうです。




    [194797] Re[8]: VBA でやり直しをやりたい。-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/03/23(13:10))
    □U R L/

      一つ書き忘れです。

      SendKeysで送り込んだキーで分かるように、

      Ctrl+Z
      で戻る

      Ctrl+Y
      でやり直し

      となります。
      これはVBAを使うまでもないかもしれません。




    [194800] Re[9]: VBA でやり直しをやりたい。-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ LGK -(2022/03/26(06:53))
    □U R L/

      実は、Undo2回は、単なる好奇心からの確認でした。

      利用目的は、変更ログを取り、変更前と変更後を保存したかったのです。
      だから、今の所Undo2回も、Redo2回も必要ありません。

      結局、Undo2回だと時々エラーになるので、
      Worksheet_SelectionChange
      でTagetを変数に入れる
      Worksheet_Change
      で変数とTargetをLog シートに入れる
      というやり方にしました。

      だから、Ando、Redo共必要なくなったのですが、又必要な機会があるかもしれません。
      わざわざありがとうございます。



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G