Makro

Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
Merhaba sizden bir ricam olacak ben satın alma için bir uygulama yaptım ilk zamanlar biraz hızlıydı ama şimdi bir güncelleme yapmam en az 30 dk örnekte satırları sildim normalde 2000 satırda sürüyor size örneği gönderdim. Fiyat kontrolde güncelle butonuna basınca çalışıyor.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,604
Excel Vers. ve Dili
Pro Plus 2021
Çalışmanız çok fazla formül içerdiği için böyle bir sorunla karşılaşıyorsunuz.

Çalışmanızdaki listele prosedürü çalışırken sayfalardaki hesaplamayı iptal eden kısım ekledim. Ne kadar faydalı olur bilemiyorum.


Kod:
Sub listele()
Application.ScreenUpdating = False
'..........................................................................'
Sheets("ANALİZ").Select
'Sayfa korumasını aç'
ActiveSheet.Unprotect
'..........................................................................'
'içeriğini temizliyen makro'
Range("e2:Bv200").Select
    ActiveWindow.SmallScroll Down:=-3
    Selection.ClearContents
    Range("A1").Select
'..................VERİ ALIŞ.................................................'

For ff = 1 To Sheets.Count
    Sheets(ff).EnableCalculation = False
Next ff

Set S1 = Sheets("alışlar")
Set s2 = Sheets("analiz")
For a = 2 To s2.[b65536].End(3).Row
    For b = 1 To s2.Cells(a, "b")
        'Alışlar sayfasındaki mal adı sütunu belirtir "d"'
        adr = "d" & sat + 1 & ":d65536"
        sat = WorksheetFunction.Match(s2.Cells(a, "a"), S1.Range(adr), 0) + sat

        '+3 analizdeki üçüncu sütununu "k" ise alışlardaki fiyatı belirtiyor'
        s2.Cells(a, b + 4) = S1.Cells(sat, "k")
    Next
sat = 0
Next

For ff = 1 To Sheets.Count
    Sheets(ff).EnableCalculation = True
Next ff


'..........................................................................'
'Sayfa korumasını açar'
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFiltering:=True
'..........................................................................'
Sheets("FİYAT KONTROL").Select
Range("A1").Select
Application.ScreenUpdating = True
End Sub
 
Son düzenleme:
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
Çook TeŞekkÜr Ederİm İŞİme Çook Yaradi 30 Dk 10 Sn DÜŞtÜ Ellerİnİze SaĞlik
 
Üst