エクセルマクロについて教えて下さい。

下記のような条件付き書式のマクロを使用してみたんです、
マクロの動作はこれで問題ないんですが、
A列は文字を入力してしまうと、
ショートカットのやり直し「CTRL+Z」が効きません。。
これはどうしようもないんでしょうか? それともやり直しが効くようにする
書き方があるんでしょうか?

---------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim intColor As Integer
Dim celcolor As Integer

If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub

Select Case Target.Value

Case Is = "あ"
intColor = 1
celcolor = 2
Case Is = "い"
intColor = 1
celcolor = 2
Case Is = "う"
intColor = 1
celcolor = 3
Case Is = "え"
intColor = 1
celcolor = 4
Case Is = "お"
intColor = 1
celcolor = 5
End Select

Target.Font.ColorIndex = intColor
Target.Interior.ColorIndex = celcolor
End Sub
----------------

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2009/03/11 23:52:57
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:SALINGER No.1

回答回数3454ベストアンサー獲得回数969

ポイント60pt

コメント欄が空いてないので、こちらで失礼します。

>これはどうしようもないんでしょうか?

どうしようもないです。


それは、文字を入力した後にVBAが動いているのですが、VBAの動きは元に戻らないからです。

元に戻すのアイコンがクリアされることでわかると思います。


先の回答のコメントにあるように、条件付書式で同じことができますし、

条件付書式の場合は元に戻すことができますので、CTRL+Zを使いたい場合はそちらをお勧めします。

http://www.eurus.dti.ne.jp/~yoneyama/Excel/jyo-syo.html

id:omoro

そうなんですか・・・出来ないんですね。残念です。

回答ありがとうございました!

2009/03/11 23:52:50
  • id:airplant
    ご参考までに、「無理やり元に戻す方法」をトラックバックさせていただきました。
    今回のは、条件付書式が良いですね。

この質問への反応(ブックマークコメント)

トラックバック

  • マクロの取り消しはできる?  マクロの難点は、簡単にCtrl+Zで取り消しでききないことですね。 でも、ある程度簡単なことでしたら、取り消しできます。 別マクロで取り消し動作を書い
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません