• DİKKAT

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

userform çok ağır çalışıyor

Katılım
30 Mart 2008
Mesajlar
44
Excel Vers. ve Dili
EXCEL 2007 TÜRKÇE
Merhaba,

ben bir userform yaptım.
bu userformda combobox ve textbok mevcut

ben excel sayfasında bir şablon oluşturdum.
bu textbooklardaki ve comboboxlardaki verilerin bir kopyasını oraya yaptırıyorum.

ve 2 comboboxta farklı bir excel dosyasından veri alıyor.

ama dosya çok küçük.
neden hızda yavaşlık olur.

bu konuda yardımcı olumusunuz.


ben size dosyayı gönderiyorum.
 
merhaba

arkadaşlar sizden yardımcı olmanızı bekliyorum.
iyi çalışmalar.
 
ustalarım hadi yardımlarınız bekliyorum.
 
.xlsm uzantılı dosyanızı office 2007'ye sahip olmadığımız için açamıyoruz. Dosyanızı alt versiyonlarla açılacak şekilde kaydedip yeniden eklermisiniz.
 
Verileri ExecuteExcel4Macro yöntemi ile yüklediğiniz için yavaş çalışıyor bence ADO ile verileri bir sayfaya çekerek kullanmayı deneyin.
 
acaba bu dosyada yardımcı olursanız sevinirim.

iyi çalışmalar
 
Userformun initialize olayındaki tüm kodları silerek aşağıdaki kodları yapıştırın. Bu kodlama sanıyorum bir çok üyemizinde işine yarayacaktır. Veriler sayfaya alınmadan direk olarak comboboxlara yüklenmektedir. Çalışmasıda oldukça hızlıdır.

Kod:
Private Sub UserForm_Initialize()
ComboBox4.ColumnCount = 1
ComboBox4.ColumnWidths = "500;0"
Set baglanti = CreateObject("ADODB.Connection")
baglanti.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.Path & "\2008.xls" & ";Extended Properties=""Excel 8.0;HDR=no;IMEX=1"";"
Set rs = baglanti.Execute("[2008 Nisan$C2:E65536]")
Do Until rs.EOF
ComboBox6.AddItem rs.Fields(0)
ComboBox4.AddItem rs.Fields(2)
rs.MoveNext
Loop
rs.Close
baglanti.Close
End Sub
 
Sayın Levent bey;

Bende maalesef, (formattan sonra) ADO çalışmıyor.

Bunu DAO ile düzenlemeniz mümkün mü?

Selamlarımla.
 
Dosyayı açarken bu hatayı alıyorum... Bu hata nedir. Neden kaykanlanıyor..?
 
İsmail Küçükşengün;266787' Alıntı:
Sayın Levent bey;

Bende maalesef, (formattan sonra) ADO çalışmıyor.

Bunu DAO ile düzenlemeniz mümkün mü?

Selamlarımla.

Sn İsmail bey

DAO konusunda yeterli bilgiye sahip değilim. Konuya vakıf bir üyemiz cevap verirse bende memnun olurum. Bende konuyu araştıracağım sonuç alırsan eklerim. Bu arada sizde office yüklemenizi tam yükleme olarak yenilemenizi öneririm.


Dosyayı açarken bu hatayı alıyorum... Bu hata nedir. Neden kaykanlanıyor..?

Araçlar-makro-güvenlik seviyenizi düşük olarak ayarlayın.
 
Araçlar-makro-güvenlik-güvenilen yayımcılar-visual basic erişimine güven kutusunu işaretleyin.
 
levent bey üstadım çok teşekkür ederim.
form hızlandı.
daha sizlerden çok öğrenecek şeylerim var.
inşallah esirgemezsiniz.
 
DAO da ADO dan çok farklı değildir. Referans yerine CreateObject ile çağırdım.

Kod:
Private Sub UserForm_Initialize()
ComboBox4.ColumnCount = 1
ComboBox4.ColumnWidths = "500;0"

'// DAO.DBEngine nesnesi...
Set DBEngine = CreateObject("DAO.DBEngine.36")

Set baglanti = DBEngine.OpenDatabase( _
    ThisWorkbook.Path & "\2008.xls", 0, 0, "Excel 8.0")

Set rs = baglanti.Execute("[2008 Nisan$C2:E65536]")

Do Until rs.EOF
    ComboBox6.AddItem rs.Fields(0)
    ComboBox4.AddItem rs.Fields(2)
    rs.MoveNext
Loop

rs.Close
baglanti.Close


End Sub
 
Dao'mu Hizli Ado'mu

Üstadım bu işi çözemedim.
Adomu hızlı Daomu bu konuda aydınlatırsan sevinirim.

iyi çalışmalar.
 
Üstadım bu işi çözemedim.
Adomu hızlı Daomu bu konuda aydınlatırsan sevinirim.

iyi çalışmalar.

Bir ara merak edip test etmiştim. :) İlk seferde DAO hızlı çıkmıştı. Sonrakilerde ADO geçti. Zaten aralarında zaman açısından önemli fark yoktur. 1 sn. ve altındadır.
 
çok teşekkür ederim üstadım
 
Geri
Üst