Hallo Ihr wissenden,
Ich habe mir einen Code geschrieben, der beim Öffnen der Excel Datei spezielle Module durch die aktuellste Version die auf dem Server liegt ersetzen.
Dies mache ich indem ich dem Modul einen neuen Namen gebe, das neue Modul importiere und anschließend das alte Modul lösche.
Der Code funktioniert wie er es soll jedoch wirft er natürlich aus, dass die selben Prozedurnamen verwendet werden. Also Fehlermeldung: Mehrdeutiger Name.
Wie kann ich diese Fehlermeldung kurzzeitig unterbinden, den die überscheidung existiert ja nur für wenige zentel Sekunden.
Vielen Dank für die Hilfe.
Hier der Code:
Edit:
Wie ich merke tritt der Fehler nur bei einem Modul auf, indem sich ein Public Enum befindet, auf das übergreifend zugriffen wird. Kommentiere ich dieses Enum aus, funktioniert der Code wie gewünscht.
Vielen Dank für die Hilfe.
LG
Chris
Ich habe mir einen Code geschrieben, der beim Öffnen der Excel Datei spezielle Module durch die aktuellste Version die auf dem Server liegt ersetzen.
Dies mache ich indem ich dem Modul einen neuen Namen gebe, das neue Modul importiere und anschließend das alte Modul lösche.
Der Code funktioniert wie er es soll jedoch wirft er natürlich aus, dass die selben Prozedurnamen verwendet werden. Also Fehlermeldung: Mehrdeutiger Name.
Wie kann ich diese Fehlermeldung kurzzeitig unterbinden, den die überscheidung existiert ja nur für wenige zentel Sekunden.
Vielen Dank für die Hilfe.
Hier der Code:
VB.NET-Quellcode
- Public Function Update_Start()
- On Error GoTo Ende
- Dim objVBComponents As Object
- Dim iModul As String
- For Each objVBComponents In .VBComponents
- Select Case objVBComponents.Type
- Case 1, 2, 3
- Select Case objVBComponents.Name
- Case "A_System", "A_Funktionen", "A_Charts_Style"
- iModul = objVBComponents.Name
- objVBComponents.Name = objVBComponents.Name & "999"
- ThisWorkbook.VBProject.VBComponents.Remove ThisWorkbook.VBProject.VBComponents(iModul & "999")
- ThisWorkbook.VBProject.VBComponents.Import (Sys_Pfad & "\" & iModul & ".bas")
- End Select
- End Select
- Next
- End With
- Ende:
- End Function
Edit:
Wie ich merke tritt der Fehler nur bei einem Modul auf, indem sich ein Public Enum befindet, auf das übergreifend zugriffen wird. Kommentiere ich dieses Enum aus, funktioniert der Code wie gewünscht.
Vielen Dank für die Hilfe.
LG
Chris
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Hotdogxxxx“ ()