| 
    
     |  | 早速のご返答ありがとうございます。 
 ご掲示頂いたコードにて実行してみましたが、やはり同じシートでの
 書換が出来ませんでした。
 それで、ERRの表示を追加してみましたところ、書換されないコメントのシートは「シートの保護」が掛けられていました。
 
 エラー処理を対応していなかったので、気付かずでした。申し訳ありません。
 今からシートの保護有無確認をして保護が掛かっていれば、外して(←VBAでできるのでしょうか??)、コメントの書換という様に変更してみようと思います。
 
 余談になりますが、ご掲示頂いたコードの中で
 「If Intersect(SH.Cells.SpecialCells(-4144), SH.Range("H4"))・・・ 」の部分で
 「Intersect」は「複数のセル範囲の共有セル範囲を表す」とHELPに
 ありましたが、ここで何故このコードが必要なのか??がわからずにおります。
 何故共有セルの確認が必要なのでしょうか?
 勉強のためにご教授頂けると幸いです。
 
 ▼Kein さん:
 >書き換えるだけなら、いちいちクリアしなくてもいいはずです。
 >
 >For Each SH In Worksheets
 >  If SH.Name = "INDEX" Then GoTo NLine
 >  On Error Resume Next
 >  If Intersect(SH.Cells.SpecialCells(-4144), SH.Range("H4")) Is _
 >  Nothing Then GoTo NLine
 >  SH.Range("H4").Comment.Text "コメント"
 >NLine:
 >  If Err.Number <> 0 Then Err.Clear
 >  On Error GoTo 0
 >Next
 >
 >てな感じで、どうでしょーか ?
 
 |  |