• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

32 bitte çalışan kod 64 bitte çalışmadı

Katılım
14 Ocak 2005
Mesajlar
807
Excel Vers. ve Dili
Microsoft Office Professional Plus 2021
Merhaba arakadaşlar,

Aşağıdaki kodlarım windows 2003 server üzeride yüklü olan excel çalışma kitabımda çalışıyordu.
Bu gün windows 2008 64 bit işletim sistemine alınca çalıştırınca aşağıdaki kodları göstererek aşağıdaki hatayı verdi. Sorunumu nasıl çözebilirim.

Kod:
' AŞAĞIDAKİ KODLARI USER FORM ÜZERİNDE ÇİFT TIKLA YAPIŞTIR.
' TAM EKRAN NORMAL EKRAN MODU

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
(ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
(ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function ShowWindow Lib "user32" _
(ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) As Long


Hata Mesajı:
Compile error:
The code in this project must be updated for use on 64-bit systems. Please review and update Declare statements and then mark them with the PtrSafe attribute.

Saygılarımla
 
Korhan bey teşekkür ederim cevabınız için.

Evet dediğiniz gibi yaptım hatta as long olanların sonlarına da as longPtr yaptım kısmen düzeldi.

Aynı kitap benim windws7 64 pc de düzgün çalışıyor.
farklı bir windows 7 64 bit işletim sisteminde objec in valid hatası veriyor.
o makine de eksik olan nedir şaştım kaldım.

Saygılarımla.
 
İşletim sistemine değilde, ofis sürümünüzün bit değeri önem taşıyor.

Onları kontrol edin.
 
Evet Korhan bey benim kendi ofisim 32bit karşı taraf 64 bit miş peki ne yapmak gerekiyor iki tarafta da hata almadan çalıştırmak için.

Bide ikisi arasında ne fark vardır.

Saygılarımla.
 
Aşağıdaki linkte birçok api kodlamasına ulaşabilirsiniz.

http://www.jkp-ads.com/articles/apideclarations.asp


Her iki versiyonda sorun çıkmadan çalışması için yapı aşağıdaki gibi olmalıdır.

Kod:
#If VBA7 Then
     '64 Bit kodlama
#Else
     '32 Bit kodlama
#End If

Formun başına sadece bu kodları yazmak yeterli olur mu?
Ben Excel 2019 64 bitte hazırladığım userform ları 2010 32 bitte çalıştırabilmek için başka yapmam gereken bir durum var mı
 
Formlarınızda eğer API kullandıysanız önerdiğim şekilde API kodlarınızı düzenlemeniz gerekiyor.
 
Formlarınızda eğer API kullandıysanız önerdiğim şekilde API kodlarınızı düzenlemeniz gerekiyor.

Bu konuda biraz acemiyim ama ekran fotosunu çektim. görüntü dalgalı ama hata mesajı okunuyor sanırım.
ne yapmam gerektiğini biraz daha anlayabileceğim şekilde yardımcı olursanız sevinirim.

215370
 

Ekli dosyalar

  • 1584565249728.png
    1584565249728.png
    357.9 KB · Görüntüleme: 1
Siz kütüphane (library) hatası alıyorsunuz.

Bunun için ALT+F11 tuşlarına basıp kod editörünü açın.
TOOLS-REFERENCES menüsünden MISSING ile başlayan satırların varsa tikini kaldırın.

Sorun düzelecektir.
 
Korhan Bey bu işlemi hata mesajı veren bilgisayarda yapacağım değil mi? yoksa çalışmayı yaparken kullanılan bilgisayarda mı olacak. Zira benim bilgisayarda bahsettiğiniz tik yok

Birde sizden bir şey rica etsem acaba...
Textbox kutusunda veri çok uzun ise içine tıklatınca kaydırma çubuğu en sona gidiyor bunu textbox kutusunun başında olması için ne yapmak gerekiyor bir çözümü var mı
 
Evet, hata veren bilgisayarda yapmalısınız.

Konu dışı sorularınızı ayrı başlık açarak sorunuz.
 
İlgili konuda sordum cevap alamadığım için size de sorma ihtiyacı duydum
Diğer konuda yardımcı olduğunuz için teşekkür ederim
Textbox ile sorum aşağıdaki konuda yardımcı olursanız sevinirim.
 
Geri
Üst