• DİKKAT

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

Başka bilgisayarda çalışan makro hata veriyor!

Katılım
20 Kasım 2010
Mesajlar
62
Excel Vers. ve Dili
Excel 2007 - Excel 2010 TÜRKÇE
Kod:
Private Sub ListBox1_enter()
Workbooks("ŞAHİT NUMUNE").Activate
Sheets("MAMUL").Select
Set S1 = Sheets("MAMUL")
X = S1.[C65536].End(3).Row
i = S1.Cells(X + 1, 3).Row
adr = S1.Range("C3:D" & i).Address
UserForm2.ListBox1.RowSource = adr
End Sub
Merhabalar
Bilgisayarımda çalışan bu makro başka bilgisayarda çalıştığında "Subscript out of range" diye hata veriyor. Debug dediğimde de Workbooks("ŞAHİT NUMUNE").Activate satırını gösteriyor. Kitabın adını değiştirmedim ikisi de masa üstünde.. Tools>Reference baktım missing ile başlayan kitaplık yok.
Neden yapar yardım eder misiniz?
 
Merhaba

Sayfa isminde Türkçe karakter kullanmadan deneyin.
 
ŞAHİT NUMUNE kitabınızın ismini, türkçe karakter kullanmadan, bitişik olarak, hem kod içinde hemde kitap isminde değiştirerek dener misiniz.
 
Kodun tükçesi biraz gayret edip anlamak isteyen olursa diye

Private Sub ListBox1_enter() = listbox1 enter olayı gerçekleşince
Workbooks("ŞAHİT NUMUNE").Activate = parantez içindeki kitaba geç (Böyle bir kitap yok ise hata vericektir !)
Sheets("MAMUL").Select = parantez içindeki sayfayı seç
Set S1 = Sheets("MAMUL") = s1 degişkenini mamul sayfası olarak ata s1 sayfa mamul olsun
X = S1.[C65536].End(3).Row = x değişkenini s1 sayfası c sütunundaki son satıra sayısına ata
i = S1.Cells(X + 1, 3).Row = i değişkenini s1 sayfasında ,x e 1 ekleyip 3.cü sütundaki satır sayısını ata ; x+1 yazılsa yeterliydi..

adr = S1.Range("C3:D" & i).Address = s1 sayfasındaki c sütunu 3 cü hücreden d sütunu i sayısı kadar hücre atayıp adresini adr değişkenine ata
UserForm2.ListBox1.RowSource = adr listbox1.doldur adr ile
End Sub
 
Son düzenleme:
Türkçe karakter ve adları birleştirip hem koda hem ada yazdım ama olmuyor.
 
Private Sub ListBox1_enter()
application.Workbooks("ŞAHİT NUMUNE").Activate
Sheets("MAMUL").Select
Set S1 = Sheets("MAMUL")
X = S1.[C65536].End(3).Row
i = S1.Cells(X + 1, 3).Row
adr = S1.Range("C3:D" & i).Address
UserForm2.ListBox1.RowSource = adr
End Sub
 
Son düzenleme:
Sagol snx111
application yazdım başa ama gene olmadı.
 
Bir şey dikkatimden kaçmış. Acaba sizinde dikkatinizden kaçmış olabilir mi ?

"Bilgisayarımda çalışan bu makro başka bilgisayarda çalıştığında "Subscript out of range" diye hata veriyor."

Çalıştığınız o başka bilgisayarda, seçilmek istenilen ŞAHİT NUMUNE kitabı var mıdır ? Eğer yok ise oluşturarak kodlarınızı tekrar deneyiniz.
 
Herkese teşekkürler sebebini anlamadım her türlü şeyi denerken birde adın sona ".xlsm" yazayım dedim ve oldu :)
Kod:
Workbooks("ŞAHİT NUMUNE.xlsm").Activate
 
Geri
Üst