|
こんにちは
モジュールに不具合があり、入れ換えしたいのですが
下記コードでは ←ココで落ちる で
"0x6501d9d4" の命令が "0x00000068" のメモリを参照しました。メモリが "read" になることはできませんでした。
プログラムを終了するには [OK] をクリックしてください
で落ちてしまいます
どう修正すればよいでしょうか
あわせて
修正ブックは、特定フォルダーに、多数存在します
コードが完成したらループで処理したいと考えていますが
注意点等ありましたらあわせて、アドバイス頂けるとうれしいです。
よろしくお願いいたします。
環境
試行環境 win2k エクセル2k
運用環境 上記 + winxp エクセル203
'エクセル2003での利用時は、ツール/マクロ/セキュリティ
' /VBプロジェクトへのアクセスを信頼するにチェック
'Visual Basic for Application Extensiblityの参照設定
Sub Del_All_TGBKMdl()
Dim myVBComp
Dim W_Book As Workbook
Dim TG_BK As String
TG_BK = "C:\CP\2007\200712\Book1.xls"
On Error GoTo Err1
Set W_Book = Workbooks(TG) 'TG_BKが開いているとき
For Each myVBComp In W_Book.VBProject.VBComponents
If myVBComp.Type = 100 Then
'Documentモジュール(ThisWorkbokやSheet)なら消去
With myVBComp.codemodule
.DeleteLines 1, .CountOfLines
End With
Else
'Documentモジュール(標準モージュール、クラスモジュール、Formなど)以外なら削除
'Application.VBE.ActiveVBProject.VBComponents.Remove myVBComp
W_Book.Application.VBE.ActiveVBProject.VBComponents.Remove myVBComp
End If
Next myVBComp
W_Book.Save '←ココで落ちる
Set W_Book = Nothing
Exit Sub
Err1:
MsgBox Err().Number & vbLf & Err().Description
Resume
End Sub
コード上でなくても、手動保存しようとすると、同様に落ちてしまう
|
|