32 bit ve 64 bit

Katılım
17 Haziran 2008
Mesajlar
1,871
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
Altın Üyelik Bitiş Tarihi
26-03-2020
Merhaba arkadaşlar;

32 bit işletim sisteminde çalışan macrolarım, 64 bit sistemde aşağıdaki hatayı veriyor.. nasıl düzeltebilirim.? tekrar mı yazmak gerekiyor.?
Kod:
'//The Win32 API Functions///
Private Declare Function GetSaveFileName Lib _
"comdlg32.dll" Alias "GetSaveFileNameA" _
(pOpenfilename As OPENFILENAME) As Long

Private Declare Function GetOpenFileName Lib _
"comdlg32.dll" Alias "GetOpenFileNameA" _
(pOpenfilename As OPENFILENAME) As Long
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,092
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

64 bit sistemlerde apilerin çalışması için PTRSAFE ifadesi eklenmesi gerekiyor.

Aşağıdaki linkte örnekler var. İncelermisiniz.

Deklare API fonksiyonlar 64 Bit uyumu

Sizin koda uyarladığımızda aşağıdaki gibi kullanabilirsiniz.

Kod:
#If VBA7 Then
    Private Declare PtrSafe Function GetSaveFileName Lib _
    "comdlg32.dll" Alias "GetSaveFileNameA" _
    (pOpenfilename As OPENFILENAME) As Long
    
    Private Declare PtrSafe Function GetOpenFileName Lib _
    "comdlg32.dll" Alias "GetOpenFileNameA" _
    (pOpenfilename As OPENFILENAME) As Long
#Else
    Private Declare Function GetSaveFileName Lib _
    "comdlg32.dll" Alias "GetSaveFileNameA" _
    (pOpenfilename As OPENFILENAME) As Long
    
    Private Declare Function GetOpenFileName Lib _
    "comdlg32.dll" Alias "GetOpenFileNameA" _
    (pOpenfilename As OPENFILENAME) As Long
#End If
 
Katılım
17 Haziran 2008
Mesajlar
1,871
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
Altın Üyelik Bitiş Tarihi
26-03-2020

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,092
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Dosyanızda tam olarak yapmak istediğiniz işlemi açıklarsanız apisiz çözümler sunabiliriz.
 
Katılım
17 Haziran 2008
Mesajlar
1,871
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
Altın Üyelik Bitiş Tarihi
26-03-2020
Katılım
6 Eylül 2007
Mesajlar
655
Excel Vers. ve Dili
excel 2016 32 Bit ve Excel 2020 32 Bit Türkçe ve İngilizce
Altın Üyelik Bitiş Tarihi
10-12-2024
32/64 bit sorunu

sorunu cozebildinizmi acaba? ayni sorunu bende yasiyorum. cozduyseniz paylasirmisiniz?
 
Katılım
15 Eylül 2010
Mesajlar
301
Excel Vers. ve Dili
EXEL

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Merhabalar,

Excel dosyalarını Word ile aç demiş olabilirsiniz.
Dosya üzerinde sağ tıklayıp Birlikte Aç'tan Excel'i seçip bir deneyin..
 
Katılım
15 Eylül 2010
Mesajlar
301
Excel Vers. ve Dili
EXEL
Murat Bey,
sadece rar uzantılı dosyalarda bu sorun oluşuyor.

Birlikte aç dediğimde excel görünmüyor.
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Excel görünmüyorsa Gözat' tan şu yolu takip ederek Excel uygulamasını seçebilirsiniz; C:\Program Files\Microsoft Office\Office14

Bu arada isterseniz bahsi geçen dosyayı sıkıştırılmış klasör olarak değil de direkt Excel dosyası olarak gönderebilirim..
 
Katılım
18 Ekim 2012
Mesajlar
323
Excel Vers. ve Dili
2003 tr
makro hatası

Merhaba,

64 bit sistemlerde apilerin çalışması için PTRSAFE ifadesi eklenmesi gerekiyor.

Aşağıdaki linkte örnekler var. İncelermisiniz.

Deklare API fonksiyonlar 64 Bit uyumu

Sizin koda uyarladığımızda aşağıdaki gibi kullanabilirsiniz.

Kod:
#If VBA7 Then
    Private Declare PtrSafe Function GetSaveFileName Lib _
    "comdlg32.dll" Alias "GetSaveFileNameA" _
    (pOpenfilename As OPENFILENAME) As Long
    
    Private Declare PtrSafe Function GetOpenFileName Lib _
    "comdlg32.dll" Alias "GetOpenFileNameA" _
    (pOpenfilename As OPENFILENAME) As Long
#Else
    Private Declare Function GetSaveFileName Lib _
    "comdlg32.dll" Alias "GetSaveFileNameA" _
    (pOpenfilename As OPENFILENAME) As Long
    
    Private Declare Function GetOpenFileName Lib _
    "comdlg32.dll" Alias "GetOpenFileNameA" _
    (pOpenfilename As OPENFILENAME) As Long
#End If

bu kodu nereye yazacağım yardımcı olabilirmisiniz 2013 excelde makrolarım çalışmıyor siteyi incelediğimde bu kodu buldum nasıl kullanacağım konusunda yardımcı olabilirmisiniz
 
Son düzenleme:
Üst