Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1028to1032
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Import von Modulen führt zu Absturz

Import von Modulen führt zu Absturz
04.12.2008 16:18:59
Modulen
Guten Tag
Ich exportiere Module in den Pfad, wo die Datei, in der der Makro steckt, abgespeichert ist. Anschliessend will ich diese wieder importieren (adaptierter Code von Nepumuk). Das führte regelmässig zu einem Excel-Absturz. Nun habe ich den Makro langsam mit F8 in Einzelschritten abgespielt. Dabei habe ich festgestellt, dass jedes Mal, wenn nachfolgende Zeile gelb hinterlegt ist und ich dann F8 drücke, das Programm abstürzt ("Microsoft Office Excel hat ein Problem festgestellt und muss beendet werden.")
Wer kann mir weiterhelfen?
Danke, Peter
.VBComponents(Left$(objVBComponents.Name, Len(objVBComponents.Name) - 1)). _
CodeModule.InsertLines 1, objVBComponents.CodeModule.Lines( _
1, objVBComponents.CodeModule.CountOfLines)
Public Sub prcImport()
'von Nepumuk - mit kleinen Abänderungen durch PS (*)
Dim objVBComponents As Object, strFilename As String
If Right(FuStrFileToRefresh, 3) "xls" Then Exit Sub '* TRUE, wenn nicht genau 2 xls-Dateien offen sind
With Workbooks(FuStrFileToRefresh).VBProject '*Funktion liefert Dateiname
For Each objVBComponents In .VBComponents
Select Case objVBComponents.Type
Case 1, 2, 3
.VBComponents.Remove .VBComponents(objVBComponents.Name)
Case 100
With objVBComponents.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next
strFilename = Dir$(ThisWorkbook.Path & "\" & "*.*") '*Export hier gespeichert
Do While strFilename ""
If UCase$(Right$(strFilename, 4)) = ".BAS" Or _
UCase$(Right$(strFilename, 4)) = ".FRM" Or _
UCase$(Right$(strFilename, 4)) = ".CLS" Then
.VBComponents.Import ThisWorkbook.Path & "\" & strFilename "*.*") '*Export hier gespeichert
End If
strFilename = Dir$
Loop
On Error Resume Next
For Each objVBComponents In .VBComponents
If objVBComponents.Type = 2 Then
Err.Clear
If Left$(objVBComponents.Name, 17) = "DieseArbeitsmappe" Or _
Left$(objVBComponents.Name, 7) = "Tabelle" Or _
Left$(objVBComponents.Name, 8) = "Diagramm" Then
.VBComponents(Left$(objVBComponents.Name, Len(objVBComponents.Name) - 1)). _
CodeModule.InsertLines 1, objVBComponents.CodeModule.Lines( _
1, objVBComponents.CodeModule.CountOfLines)
If Err.Number = 0 Then
.VBComponents.Remove .VBComponents(objVBComponents.Name)
Else
Debug.Print objVBComponents.Name
End If
End If
End If
Next
End With

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Import von Modulen führt zu Absturz
04.12.2008 16:20:00
Modulen
Hallo Peter,
hast Du den Zugriff auf das VBA Projekt erlaubt?

AW: Import von Modulen führt zu Absturz
04.12.2008 21:43:00
Modulen
Hallo Hajo
Der Fehler ist nicht so einfach zu lokalisieren.
Wenn ich in der Zieldatei zuerst alle Codes eliminiere, klappt der Import - sonst nicht.
Könnte ev. etwas damit zu tun haben, dass dieser Code aus Excel 2000 stammt, wenn ich richtig verstanden habe.
So werde ich wohl jeweils zuerst die Zielarbeitsmappe von Code "reinigen" und dann den Import vornehmen.
Gruss, Peter
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige