カレントデータベースの標準モジュールを削除します。
以後の操作が出来なくなってしまうため、ツールバーとモジュール関連は削除しないよう指定します。
削除する前に必ずバックアップを取るように。(カレントデータベース、モジュール)
- 参照設定 の確認。
- 削除しないモジュールはモジュール名の頭に A ( a ) を付けます。
A0Module.Bas
A1MenuBar01.Bas
Sub PMoRemove00()
''モジュール削除 Start 2002/11/19
Dim mypZMoname1 As String '削除しないモジュール名の先頭文字
Dim mypZMoname2 As String '削除しないモジュール名の先頭文字
mypZMoname1 = "A"
mypZMoname1 = "a"
''フルパスファイル名からファイル名を取り出す
mypActName = FPickUpName(1)
PMoRemove01 mypActName, mypZMoname1, mypZMoname2
End Sub
Sub PMoRemove01(mypActName As String, mypZM1 As String, mypZM2 As String)
''モジュール削除 2002/10/19
Dim mypVBAComp As Object
Dim mypMoName As String 'モジュール名
Dim mypMoType As Integer 'モジュール型 1:標準 2:Class 3:Form
Dim mypMoCount As Integer 'モジュール数
Dim mypTitle As String
Dim mypMsg1 As String
Dim mypMsg2 As String
Dim mypRetMsg As Integer
mypTitle = "モジュール削除"
mypMsg1 = "削除 終了 "
mypMsg2 = "削除しますか。? "
mypMsg1 = mypMsg1 & vbCrLf & vbCrLf & mypActName & " [ "
mypMsg2 = mypMsg2 & vbCrLf & vbCrLf & mypActName & " [ "
''モジュール削除の確認
For Each mypVBAComp In VBE.ActiveVBProject.VBComponents
mypMoType = mypVBAComp.Type
If mypMoType = 1 Then
mypMoName = mypVBAComp.name
If Left(mypMoName, 1) = mypZM1 Or Left(mypMoName, 1) = mypZM2 Then
Else
mypMoCount = mypMoCount + 1
End If
End If
Next
Beep
mypMsg2 = mypMsg2 & mypMoCount & " ]"
mypRetMsg = MsgBox(mypMsg2, vbYesNo + vbQuestion, mypTitle)
If mypRetMsg = vbNo Then
End
End If
''モジュール削除
mypMoCount = 0
For Each mypVBAComp In VBE.ActiveVBProject.VBComponents
mypMoType = mypVBAComp.Type
If mypMoType = 1 Then
mypMoName = mypVBAComp.name
If Left(mypMoName, 1) = mypZM1 Or Left(mypMoName, 1) = mypZM2 Then
Else
mypMoCount = mypMoCount + 1
''モジュール削除
VBE.ActiveVBProject.VBComponents.Remove _
VBE.ActiveVBProject.VBComponents(mypMoName)
End If
End If
Next
mypMsg1 = mypMsg1 & mypMoCount & " ]"
MsgBox mypMsg1, vbInformation, mypTitle
End Sub