J
Javier G via AccessMonster.com
Hi,
I 'm just starting programming so,......... Can any body please check the
following code ( do Not laugh too much, if many mistakes)
'**** START CODE *********
The function checks & try to repair if a broken reference is found
Public Function funGUID() As Boolean
On Error GoTo Err_funGUID
Dim Ref As Reference
funGUID = True
For Each Ref In References
If Ref.IsBroken = True Then
'Broken references
MsgBox "Reference: " & vbTab & Ref.Name & vbCrLf _
& "Version: " & vbTab & Ref.Major & "." & Ref.Minor &
vbCrLf _
& "Path: " & vbTab & Ref.FullPath & vbCrLf _
& "GUID: " & vbTab & Ref.Guid, vbCritical, "Error"
References.Remove Ref
Select Case Ref.Guid
'Access 9.0 (MSACC.OLB)
Case "{4AFFC9A0-5F99-101B-AF4E-00AA003F0F07}"
References.AddFromGuid "{4AFFC9A0-5F99-
101B-AF4E-00AA003F0F07}", 9, 0 'Version
'VBA 4.0 (VBE6.DLL)
Case "{000204EF-0000-0000-C000-000000000046}"
References.AddFromGuid "{000204EF-0000-
0000-C000-000000000046}", 4, 0 'Version
'DAO 5.0 (DAO360.DLL)
Case "{00025E01-0000-0000-C000-000000000046}"
References.AddFromGuid "{00025E01-0000-
0000-C000-000000000046}", 5, 0 'Version
Case Else
MsgBox "Sorry GUID Not found", vbCritical,
"Error"
End Select
If funGUID = True Then
MsgBox "Broken reference was repaired",
vbInformation, "Ok"
End If
Else
' No Broken references
MsgBox "Name: " & vbTab & Ref.Name & vbCrLf _
& "Version: " & vbTab & Ref.Major & "." & Ref.
Minor & vbCrLf _
& "Path: " & vbTab & Ref.FullPath & vbCrLf _
& "GUID: " & vbTab & Ref.Guid, vbInformation,
"References"
End If
Next Ref
If funGUID = True Then
MsgBox "Now there are Not broken references", vbInformation, "Ok"
Else
MsgBox "The program could Not repair the broken reference",
vbCritical, "Error"
End If
Exit_funGUID:
Exit Function
Err_funGUID:
'MsgBox Err.Description, vbCritical, "Error :" & Err.Number
funGUID = False
Resume Next
End Function
' ******* FINNISH CODE ***********
Thank you in advance
Javier
I 'm just starting programming so,......... Can any body please check the
following code ( do Not laugh too much, if many mistakes)
'**** START CODE *********
The function checks & try to repair if a broken reference is found
Public Function funGUID() As Boolean
On Error GoTo Err_funGUID
Dim Ref As Reference
funGUID = True
For Each Ref In References
If Ref.IsBroken = True Then
'Broken references
MsgBox "Reference: " & vbTab & Ref.Name & vbCrLf _
& "Version: " & vbTab & Ref.Major & "." & Ref.Minor &
vbCrLf _
& "Path: " & vbTab & Ref.FullPath & vbCrLf _
& "GUID: " & vbTab & Ref.Guid, vbCritical, "Error"
References.Remove Ref
Select Case Ref.Guid
'Access 9.0 (MSACC.OLB)
Case "{4AFFC9A0-5F99-101B-AF4E-00AA003F0F07}"
References.AddFromGuid "{4AFFC9A0-5F99-
101B-AF4E-00AA003F0F07}", 9, 0 'Version
'VBA 4.0 (VBE6.DLL)
Case "{000204EF-0000-0000-C000-000000000046}"
References.AddFromGuid "{000204EF-0000-
0000-C000-000000000046}", 4, 0 'Version
'DAO 5.0 (DAO360.DLL)
Case "{00025E01-0000-0000-C000-000000000046}"
References.AddFromGuid "{00025E01-0000-
0000-C000-000000000046}", 5, 0 'Version
Case Else
MsgBox "Sorry GUID Not found", vbCritical,
"Error"
End Select
If funGUID = True Then
MsgBox "Broken reference was repaired",
vbInformation, "Ok"
End If
Else
' No Broken references
MsgBox "Name: " & vbTab & Ref.Name & vbCrLf _
& "Version: " & vbTab & Ref.Major & "." & Ref.
Minor & vbCrLf _
& "Path: " & vbTab & Ref.FullPath & vbCrLf _
& "GUID: " & vbTab & Ref.Guid, vbInformation,
"References"
End If
Next Ref
If funGUID = True Then
MsgBox "Now there are Not broken references", vbInformation, "Ok"
Else
MsgBox "The program could Not repair the broken reference",
vbCritical, "Error"
End If
Exit_funGUID:
Exit Function
Err_funGUID:
'MsgBox Err.Description, vbCritical, "Error :" & Err.Number
funGUID = False
Resume Next
End Function
' ******* FINNISH CODE ***********
Thank you in advance
Javier