HERBERS Excel-Forum - das Archiv
64 bit Problem ? Dringende Hilfe bitte
Thorben

Hallo alle zusammen,
vielleicht kann mir mal jemand sagen was hier fischig ist:
Ich habe 2 völlig identische Dateien, bis auf die Tatsache der Benennung:
! BV LGR_alt
! BV LGR_neu
Beide haben diesen Code inne der mit Workbook_Open gestartet wird:
Sub Datentabelleoffen()
Dim sFile As String, sPath As String
sFile = "Datentabellen_blank.xlsx"
sPath = ThisWorkbook.Path & "\" & sFile
If WkbExists("Datentabellen_blank.xlsx") = False Then
Workbooks.Open sPath
End If
For Each wkb In Workbooks
If wkb.Name Like "! BV *" Then
wkb.Activate
End If
Next wkb
End Sub
Private Function WkbExists(sFile As String) As Boolean
Dim wkb As Object
On Error Resume Next
Set wkb = Workbooks(sFile)
If Not wkb Is Nothing Then
WkbExists = True
End If
On Error GoTo 0
End Function

Beide Dateien nutze ich seit 3 Jahren ohne Probleme unter Win7 32bit.
Jetzt habe ich einen Win7 Rechner mit 64bit und folgendes ist passiert:
! BV LGR_alt = läuft wie am ersten Tag
Sie öffnet die Datentabellen falls nicht offen und tut eben nichts sollte diese schon offen sein!
! BV LGR_neu = bricht bei For Each wkb In Workbooks ab, und Ende!
Fehler beim Kompilieren - Projekt oder Bibliothek nicht gefunden
Code beenden!
Die ! BV selbst ist dann offen aber die Datentabellen eben nicht!
Hat jemand eine Idee was das sein kann ?
Danke und Gruß
Thorben

AW: 64 bit Problem ? Dringende Hilfe bitte
Luschi

Hallo Thorben,
in der Prozedur 'Datentabelleoffen' ist die Variable 'wbk' nicht definiert, deshalb sollte es hier krachen, wenn im Moduldkopf dies hier steht: Option Explicit
Vielleicht liegt hier schon der Unterschied in den beiden Dateien. Außerdem muß man Dateinamen nicht unbedingt mit Sonderzeichen befüllen, auch wenn es im deutschen Sprachraum erlaubt ist; dazu zähle ich auch Leerzeichen und Ausrufezeichen.
Auch der Prozedurname/Funktionsname 'WkbExists' ist unglücklich gewählt, denn 'exists' bedeutet:
- ist die Datei auf diesem Rechner in dem oder dem Verzeichnis vorhanden; besser wäre:
- 'WbkIsOpen'
Gruß von Luschi
aus klein-Paris

ist schon komisch!
Thorben

Hi Luschi,
danke für deine Tips. Habs mal umgeschrieben.
Jedoch ist es sehr seltsam.
Ich habe über die letzten 36 Monate jede Woche Sicherungen abgespeichert und keine einzige der
gesicherten ! BV LGR_neu Dateien ist lauffähig!
Wie gesagt die sind im inneren 100% identisch und liefen 36 Monate. Jetzt funzen die nicht mehr.
Nichtmal die erste original erstellte Datei mit diesem Namen lässt sich starten und bricht bei wkb einfach ab. Öffne ich die ! BV LGR_alt ist alles tutti!
Ich hab jetzt eine neue Datei aufgebaut mit demselben Namen, denselben Modulen und und und,
und funzt natürlich ohne Probleme.
Irgendwie macht mir das Angst...!
Wenn ich was weiß melde ich mich nochmal.
Gruß
Thorben

AW: ist schon komisch!
Nepumuk

Hallo,
die Fehlermeldung deutet auf einen gebrochenen Verweis hin. Schau mal in VBA-Editor unter Extras - Verweise ob da bei einem "Nicht vorhanden" steht. Bei dem nimmst du das Häkchen raus.
Gruß
Nepumuk

@Nepumuk ! Das war es ! Besten Dank
Thorben

Moin nochmal,
Jupp - Verwaiste Eurotool.xla hat sich irgendwie eingeschlichen!
Mann-O-Mann sowas!
Danke für das Troubleshooting!
Gruß vom Werdersee
Thorben

64 bit Problem ? Dringende Hilfe bitte
Thorben

Hallo alle zusammen,
vielleicht kann mir mal jemand sagen was hier fischig ist:
Ich habe 2 völlig identische Dateien, bis auf die Tatsache der Benennung:
! BV LGR_alt
! BV LGR_neu
Beide haben diesen Code inne der mit Workbook_Open gestartet wird:
Sub Datentabelleoffen()
Dim sFile As String, sPath As String
sFile = "Datentabellen_blank.xlsx"
sPath = ThisWorkbook.Path & "\" & sFile
If WkbExists("Datentabellen_blank.xlsx") = False Then
Workbooks.Open sPath
End If
For Each wkb In Workbooks
If wkb.Name Like "! BV *" Then
wkb.Activate
End If
Next wkb
End Sub
Private Function WkbExists(sFile As String) As Boolean
Dim wkb As Object
On Error Resume Next
Set wkb = Workbooks(sFile)
If Not wkb Is Nothing Then
WkbExists = True
End If
On Error GoTo 0
End Function

Beide Dateien nutze ich seit 3 Jahren ohne Probleme unter Win7 32bit.
Jetzt habe ich einen Win7 Rechner mit 64bit und folgendes ist passiert:
! BV LGR_alt = läuft wie am ersten Tag
Sie öffnet die Datentabellen falls nicht offen und tut eben nichts sollte diese schon offen sein!
! BV LGR_neu = bricht bei For Each wkb In Workbooks ab, und Ende!
Fehler beim Kompilieren - Projekt oder Bibliothek nicht gefunden
Code beenden!
Die ! BV selbst ist dann offen aber die Datentabellen eben nicht!
Hat jemand eine Idee was das sein kann ?
Danke und Gruß
Thorben

AW: 64 bit Problem ? Dringende Hilfe bitte
Luschi

Hallo Thorben,
in der Prozedur 'Datentabelleoffen' ist die Variable 'wbk' nicht definiert, deshalb sollte es hier krachen, wenn im Moduldkopf dies hier steht: Option Explicit
Vielleicht liegt hier schon der Unterschied in den beiden Dateien. Außerdem muß man Dateinamen nicht unbedingt mit Sonderzeichen befüllen, auch wenn es im deutschen Sprachraum erlaubt ist; dazu zähle ich auch Leerzeichen und Ausrufezeichen.
Auch der Prozedurname/Funktionsname 'WkbExists' ist unglücklich gewählt, denn 'exists' bedeutet:
- ist die Datei auf diesem Rechner in dem oder dem Verzeichnis vorhanden; besser wäre:
- 'WbkIsOpen'
Gruß von Luschi
aus klein-Paris

ist schon komisch!
Thorben

Hi Luschi,
danke für deine Tips. Habs mal umgeschrieben.
Jedoch ist es sehr seltsam.
Ich habe über die letzten 36 Monate jede Woche Sicherungen abgespeichert und keine einzige der
gesicherten ! BV LGR_neu Dateien ist lauffähig!
Wie gesagt die sind im inneren 100% identisch und liefen 36 Monate. Jetzt funzen die nicht mehr.
Nichtmal die erste original erstellte Datei mit diesem Namen lässt sich starten und bricht bei wkb einfach ab. Öffne ich die ! BV LGR_alt ist alles tutti!
Ich hab jetzt eine neue Datei aufgebaut mit demselben Namen, denselben Modulen und und und,
und funzt natürlich ohne Probleme.
Irgendwie macht mir das Angst...!
Wenn ich was weiß melde ich mich nochmal.
Gruß
Thorben

AW: ist schon komisch!
Nepumuk

Hallo,
die Fehlermeldung deutet auf einen gebrochenen Verweis hin. Schau mal in VBA-Editor unter Extras - Verweise ob da bei einem "Nicht vorhanden" steht. Bei dem nimmst du das Häkchen raus.
Gruß
Nepumuk

@Nepumuk ! Das war es ! Besten Dank
Thorben

Moin nochmal,
Jupp - Verwaiste Eurotool.xla hat sich irgendwie eingeschlichen!
Mann-O-Mann sowas!
Danke für das Troubleshooting!
Gruß vom Werdersee
Thorben

Bewerten Sie hier bitte das Excel-Portal