Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1848to1852
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

Umstellung Excel 2007 nach 2019 64 bit

Umstellung Excel 2007 nach 2019 64 bit
26.09.2021 09:59:42
Harald
Hallo,
ich habe Excel 2019 64 bit installiert, bei den Declare-Anweisungen habe ich das ptrsafe hinzugefügt.
Wenn ich "speichern unter" aufrufe wird zwar die MsgBox angezeigt, aber das entsprechende Fenster für "speichern unter" erscheint nicht nach dem klicken auf ok - was ist an dem Code im Anhang falsch?
Unter Excel 2007 32 bit lief alles reinbungslos.
https://www.herber.de/bbs/user/148269.xlsm
Im voraus schon vielen Dank

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Umstellung Excel 2007 nach 2019 64 bit
26.09.2021 10:29:12
Herbert_Grom
Hallo Harald,
wenn du immer nur in einer Kopie der Originaldatei arbeiten willst, dann mach doch aus der Originalen eine "xltm".
P.S.: Du hast den Makrocode in deiner OD hoffentlich nicht auch in der "DieserArbeitsmappe"?
Servus
AW: Umstellung Excel 2007 nach 2019 64 bit
26.09.2021 14:23:11
Harald
Hallo Herbert,
vielen Dank für die schnelle Antwort.
Nein - der Code ist im Modul mdlStart.
Eine Vorlage wäre grundsätzlich möglich, allerdings müsste auch hier gleich unter einem neuen Namen gespeichert werden, da zu Beginn die Mannschaften und die Turnierform eingelesen werden und diese abgespeichert werden müssen.
Ich werde bei der letzten Antwort noch einmal eine etwas grössere Datei mit mehr Deteils einfügen, allerdings auch nicht alles, da die Original-Datei schon sehr gross ist.
Nochmals vielen Dank
Anzeige
da fehlt noch was.....
26.09.2021 10:41:41
ralf_b
...die declare Anweisungen der Api-Funktionen und die Definition vom OPENFILENAME Datentypen.
AW: da fehlt noch was.....
26.09.2021 11:22:12
mumpel
"Option Explicit" fehlt auch, dann würden Fehler auffallen.
AW: da fehlt noch was.....
26.09.2021 14:30:04
Harald
Hallo mumpel,
vielen Dank für die schnelle Antwort.
Bei Ralf habe ich mehr Code hochgeladen (nicht die ganze Datei, da diese zu gross ist)
AW: da fehlt noch was.....
26.09.2021 14:27:33
Harald
Hallo Ralf,
vielen Dank für die schnelle Information.
Hier ist eine groessere Datei mit mehr Code, aber auch nicht das ganze Programm, weil diese Datei schon sehr gross ist.
https://www.herber.de/bbs/user/148276.xlsm
Nochmals vielen Dank.
Anzeige
AW: da fehlt noch was.....
26.09.2021 16:02:15
Planlos
Mit einfach nur PTRSAFE is es noch nicht. In den delare - anweisungen, deinen Variablen sowie in den Struckturen müssen Handles, Pointers etc noch in den Datentyp LongPtr überführt werden.
z.B.
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As Longptr
hInstance As Longptr
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Longptr
lpfnHook As Longptr
lpTemplateName As String
End Type
Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, ByVal _
lpWindowName As String) As LongPtr
Auch solltest du aufgrund der anderen Ausrichtung wie bei 32bit bei 64 bit für die bestimmung der Grössen von Struckturen mit LenB arbeiten.
z.B.
.lStructSize = LenB(udtOFN)
Anzeige
AW: da fehlt noch was.....
26.09.2021 16:02:50
Planlos
Mit einfach nur PTRSAFE is es noch nicht. In den delare - anweisungen, deinen Variablen sowie in den Struckturen müssen Handles, Pointers etc noch in den Datentyp LongPtr überführt werden.
z.B.
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As Longptr
hInstance As Longptr
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Longptr
lpfnHook As Longptr
lpTemplateName As String
End Type
Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, ByVal _
lpWindowName As String) As LongPtr
Auch solltest du aufgrund der anderen Ausrichtung wie bei 32bit bei 64 bit für die bestimmung der Grössen von Struckturen mit LenB arbeiten.
z.B.
.lStructSize = LenB(udtOFN)
Anzeige
AW: Umstellung Excel 2007 nach 2019 64 bit
26.09.2021 17:36:53
volti
Hallo Harald,
falls Du noch Probleme haben solltest, schau Dir die anliegende Datei mal an, in die ich die beiden Declares für 32 und 64 Bit eingebaut habe. 32 Bit kann ich aber nicht testen.
Wenn ich API-Funktionen in mehreren Modulen mehrfach verwende, packe ich die Declares und Types gerne in ein Extra-Modul, z.B. API.
Ansonsten kann ich mich den Ausführungen der anderen Antworter bzgl. Anpassung von Variablen und Types nur entsprechend anschließen...
Haralds Exceldatei
Gruß
Karl-Heinz
AW: Umstellung Excel 2007 nach 2019 64 bit
27.09.2021 08:47:30
Harald
Hallo Karl-Heinz,
vielen Dank für die Hilfe.
Ich werde die Datei testen und dann in allen Modulen einarbeiten.
Allerdings komme ich frühestens am Wochenende dazu.
Nochmals vielen Dank
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige