|
▼タケタケ さん:
こんにちは!
>1.
>>>また、F列セルのDELETEするとエラーがでます(例えば、F2:F3セル選択で削除)。
>>こちらはSelect対象が1つより多いときにエラーとなってしまいますので
>>1つより多いときには処理を終了させるコードを記載してあげれば大丈夫です。
>>下記に追加してあります。
>If .Count > 1 Then Exit Sub '追加
>このコードのことですか?
その通りです。
>2.Application.EnableEvents = False True について
>上記コードのことですが、色々調べましたが、まだ理解できずにいます。
>わかりやすく教えて頂けないでしょうか?
わかりやすく説明できるかわかりませんが、これはシートイベントのON,OFFを
するものです。
Application.EnableEvents = False Trueを入れずに行ってみるとわかりますが、
行を挿入することで、またシートイベントが発生してしまうんですね。
そうするとまたこのシートイベントが発生し、
エラーになる原因になりますので、挿入作業のところで
シートイベントをOFFにする必要があります。
>なお、最後に、
>このコードをファイル内の複数の同じ条件下のシートで使用しようと思っています。
>ですが、対象のワークシートがたくさんあります。
>各シートに同じコードを貼り付けていくのが面倒ですし、サイズも大きくなります。
>一つのコードで、複数のワークシートを制御する簡単なやり方は無いでしょうか?
こちらはシートイベントではなくブックイベントに入れてあげればいいと思います。
そしてイベントを発生させたくないシートを除外してあげればいいと思います。
例
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name = "Sheet1" Then Exit Sub
'処理
End Sub
|
|