[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『エラー処理について(マクロ)』(CHISA)
最近、 On Error Goto 〜 Exit をおぼえたばかりのCHISAです。
たとえば、オートシェイプ1から10を一箇所に集めるコードがあったとします。
Sub TEST()
Dim i As Integer
For i = 1 To 10
With ActiveSheet.Shapes("Rectangle " & i)
.Top = 237
.Left = 90
.Width = 12
End With
Next i
End Sub
オートシェイプ1から10の中で、削除されたりして、ないオートシェイプがあると 途中で "指定したアイテムが見つかりませんでした" というエラーになります。
そこで、エラーでもとまらず進んで、一番最後にメッセージボックスで、 (2と5のオートシェイプがない場合) "Rectangle 2がエラーです。 Rectangle 5がエラーです。"
と表示させる方法はありますか?
最近おぼえた On Error Goto 〜 Exit ではダメみたいで↓↓
教えてください。お願いします。 (CHISA)
Sub TEST()
Dim i As Integer
On Error Resume next
For i = 1 To 10
With ActiveSheet.Shapes("Rectangle " & i)
.Top = 237
.Left = 90
.Width = 12
End With
If Err Then
Msgbox "Rectangle " & i & "がエラーです。"
Err.Clear
End if
Next i
End Sub
BJ
BJさんありがとうございますm(__)m♪ バッチリできちゃいました。
ありがとうございました♪ (CHISA)
あ、1番最後か・・。 メッセージ内容は、適当に修正してください。 BJ
Dim i As Integer
Dim st As String
On Error Resume Next
For i = 1 To 10
With ActiveSheet.Shapes("Rectangle " & i)
.Top = 237
.Left = 90
.Width = 12
End With
If Err Then
st = st & vbLf & "Rectangle " & i & "がエラーです。"
Err.Clear
End If
Next i
If Len(st) > 0 Then
MsgBox Mid(st, 2), vbExclamation
End If
ますますばっちりになっちゃいました♪♪
BJさんありがとうございますm(__)m (CHISA)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.