Makro kodu kısaltma

Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Ustalar merak ettiğim bir şey var formül yada kodların uzun olması çalışmayı etkiler mi ? Mesela web tasarımda site kodları uzun olursa sayfa geç açılır. Excelde böyle bir şey var mı ? Benim uzun bir makro kodum var bunu bu şekilde kullanmalı mıyım yoksa kısa olması daha mı iyi ? Yardımlarınız için şimdiden teşekkürler.


Kod:
Sub Temizle_1()
'
' Temizle_1 Makro
'

'
    Range( _
        "A8:B8,D8:AG9,A11:B11,D11:AG12,A14:B14,D14:AG15,A17:B17,D17:AG18,A20:B20,D20:AG21,A23:B23,D23:AG24" _
        ).Select
    Range("D23").Activate
    
    Range( _
        "A8:B8,D8:AG9,A11:B11,D11:AG12,A14:B14,D14:AG15,A17:B17,D17:AG18,A20:B20,D20:AG21,A23:B23,D23:AG24,A26:B26,D26:AG27,A29:B29,D29:AG30,A32:B32,D32:AG33,A35:B35,D35:AG36" _
        ).Select
    Range("D35").Activate
    
    Range( _
        "A8:B8,D8:AG9,A11:B11,D11:AG12,A14:B14,D14:AG15,A17:B17,D17:AG18,A20:B20,D20:AG21,A23:B23,D23:AG24,A26:B26,D26:AG27,A29:B29,D29:AG30,A32:B32,D32:AG33,A35:B35,D35:AG36,A38:B38,D38:AG39,A41:B41,D41:AG42,A44:B44,D44:AG45,A47:B47,D47:AG48" _
        ).Select
    Range("D47").Activate
    Selection.ClearContents
    
    Range("B8").Select
    
End Sub
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

İşlemlerin yavaş veya hızlı olması, formüllerin veya kodların yapısına bağlı olarak değişebilir.
Verdiğiniz kod aşağıdaki şekilde de yazılabilir.
İşlem sonrasında belli bir hücrenin (örneğin A38 gibi ) seçilmesi gerekmiyorsa, kırmızı satırı silin.
Yani bir hücre seçilmeden de yazma/silme işlemi yapılabilir.
.
Rich (BB code):
Sub Temizle_1()
Range("A8:B8,D8:AG9,A11:B11,D11:AG12,A14:B14,D14:AG15,A17:B17,D17:AG18,A20:B20,D20:AG21," & _
        "A23:B23,D23:AG24,A26:B26,D26:AG27,A29:B29,D29:AG30,A32:B32,D32:AG33,A35:B35,D35:AG36," & _
        "A38:B38,D38:AG39,A41:B41,D41:AG42,A44:B44,D44:AG45,A47:B47,D47:AG48").ClearContents
[A38].Activate
End Sub
 
Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Hocam gerçekten çok fark ediyor. İki kod arasında çalışma bakımından büyük fark var. Teşekkür ederim.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Belgenizde formül yoğunluğu yüksek veya kapsamlı dizi formülleri varsa,
işlemin daha da hızlı olması için aşağıdaki;
-- ilk satırı kodların en başına ( Range(.....) nin hemen üstüne),
-- ikinci satırı da en sonuna ( End Sub satırının hemen üstüne) eklemenizde yarar var.
.
Application.ScreenUpdating = False: Application.Calculation = xlCalculationManual
Application.ScreenUpdating = True: Application.Calculation = xlCalculationAutomatic
 
Son düzenleme:
Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Deneyeceğim hocam yardımların için minnettarım
 
Katılım
24 Mart 2018
Mesajlar
15
Excel Vers. ve Dili
2010 - Türkçe
Ömer BARAN Hocam
size örnek excel ve vba kodları göndermek istiyorum lakin size ulaşamadım
mail adresime size ulaşabileceğim mail adresini yazarmısınız
mrtdnmz68@gmail.com
 
Katılım
24 Mart 2018
Mesajlar
15
Excel Vers. ve Dili
2010 - Türkçe
Ömer Baran hocam exceldestek com dan msj atmıştım ilginebildinizmi acaba
 
Üst