• DİKKAT

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

Makronun Hızlanması Hk.

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
777
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Merhaba arkadaşlar

Üzerinde çalıştığım dosyayı kapatırken yapılan değişiklikleri kaydediyor ama kaydetme işlemi 15 20 saniye sürüyor. bunu nasıl hızlandırabilirim.
Dosyanın bazı yerlerinden de işlem yaparken de kaydetmesi gerekiyor. Mesela her bir personelin ders ücretini kaydederken çalışma kitabını da kaydetme kodu var. Bilgisayarın kilitlenmesi, elektrik kesilmesi vb. den dolayı dosya kapanırsa girilen bilgiler kaybolmasın diye.

Aşağıdaki kodlarda kırmızı olan kodları buldum ama "Sub or function not defined" hatası veriyor. Bu konuda yardımcı olursanız sevinirim.

cevap = MsgBox("Programı Kapatacak mısınız...?", vbQuestion + vbYesNoCancel, "Kapat")
If cevap = vbYes Then
TurnOnSpeed True
ThisWorkbook.Save
TurnOnSpeed False
Application.Quit
Else
Exit Sub
End If
 
Merhaba arkadaşlar

Üzerinde çalıştığım dosyayı kapatırken yapılan değişiklikleri kaydediyor ama kaydetme işlemi 15 20 saniye sürüyor. bunu nasıl hızlandırabilirim.
Dosyanın bazı yerlerinden de işlem yaparken de kaydetmesi gerekiyor. Mesela her bir personelin ders ücretini kaydederken çalışma kitabını da kaydetme kodu var. Bilgisayarın kilitlenmesi, elektrik kesilmesi vb. den dolayı dosya kapanırsa girilen bilgiler kaybolmasın diye.

Aşağıdaki kodlarda kırmızı olan kodları buldum ama "Sub or function not defined" hatası veriyor. Bu konuda yardımcı olursanız sevinirim.

cevap = MsgBox("Programı Kapatacak mısınız...?", vbQuestion + vbYesNoCancel, "Kapat")
If cevap = vbYes Then
TurnOnSpeed True
ThisWorkbook.Save
TurnOnSpeed False
Application.Quit
Else
Exit Sub
End If

TurnOnSpeed prosedürünü tanımlamanız gerekiyor.
içeriği nedir bunun?

Kod:
TurnOnSpeed True
 
TurnOnSpeed prosedürünü tanımlamanız gerekiyor.
içeriği nedir bunun?

Kod:
TurnOnSpeed True

Bende bu forumdan buldum. Ekte eklediği resimdeki gibi

TurnOnSpeed True
Sizin kodlarınız
TurnOnSpeed False
 

Ekli dosyalar

  • Adsız.jpg
    Adsız.jpg
    213.5 KB · Görüntüleme: 4

Bu fonksiyonu dosyanıza eklediniz mi?

Kod:
Public Function TurnOnSpeed(x As Boolean)

    If x = True Then
    With Application
        PriorCalcMode = Application.Calculation
            .ScreenUpdating = False
            .DisplayAlerts = False
            .EnableEvents = False
            .Cursor = xlWait
            .Calculation = xlCalculationManual
    End With
    
    ElseIf x = False Then
    
    With Application
            .ScreenUpdating = True
            .DisplayAlerts = True
            .EnableEvents = True
            .StatusBar = False
            .Cursor = xlDefault
        .Calculation = PriorCalcMode
        End With
    End If

End Function
 
Bu fonksiyonu dosyanıza eklediniz mi?

Kod:
Public Function TurnOnSpeed(x As Boolean)

    If x = True Then
    With Application
        PriorCalcMode = Application.Calculation
            .ScreenUpdating = False
            .DisplayAlerts = False
            .EnableEvents = False
            .Cursor = xlWait
            .Calculation = xlCalculationManual
    End With
   
    ElseIf x = False Then
   
    With Application
            .ScreenUpdating = True
            .DisplayAlerts = True
            .EnableEvents = True
            .StatusBar = False
            .Cursor = xlDefault
        .Calculation = PriorCalcMode
        End With
    End If

End Function

Hayır eklemedim.

Yukarıdaki kodları bir yere eklemek mi gerekiyor.
 
Bahsi geçen prosedürü boş bir modüle ekleyip deneyebilirsiniz.
 
Merhaba; Dosyalarınızın daha hızlı kaydetmesini istiyorsanız. excel ikili çalışma kitabı xlsb uzantılı olarak kullanmayı denemelisiniz.
 
Merhaba; Dosyalarınızın daha hızlı kaydetmesini istiyorsanız. excel ikili çalışma kitabı xlsb uzantılı olarak kullanmayı denemelisiniz.

Merhaba N.Ziya Hiçdurmaz farklı bie excel sürümümü kullanmalıyım veya dosyayı xlsb uzantılı olarak farklı mı kaydetmeliyim.
 
Merhaba N.Ziya Hiçdurmaz farklı bie excel sürümümü kullanmalıyım veya dosyayı xlsb uzantılı olarak farklı mı kaydetmeliyim.

Teşekkürler Sayın N. Ziya Hiçdurmaz bayağı hızlandı.
 
Geri
Üst