Sayfalar Arası Geçiş Makro

leonadies

Excel Derya Deniz Bizde Kulaç Atmaya Çalışıyoruz:)
Altın Üye
Katılım
12 Şubat 2015
Mesajlar
515
Excel Vers. ve Dili
Office 2016 TR 64 Bit Windows
Altın Üyelik Bitiş Tarihi
01-02-2027
Merhaba üstadlar makro kaydet yöntemi ile bir çalışma yaptım. Bu kayıtlarda zaman zaman sayfalar arası geçişte bulunuyor. Makroyu çalıştırdğımda bu geçişleri hissediyorum ve çirkin görüntüler oluşuyor. Önüne geçmenin bir yolu varmı ? Dosyam ağ üzerinde bağıntılı fomüllerler dolu bu nedenle paylaşamıyorum.

Birde "Sayfa 1" sekmesi hep gizli kalsın göster denildiğinde şifre sorsun istiyorum. Mümkünatı var mı?
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,108
Excel Vers. ve Dili
2007 Türkçe
Merhaba,
Kodlarınızın başına Application.ScreenUpdating = False sonuna da Application.ScreenUpdating = True satırlarını ilave ederseniz ekrandaki değişimleri görmezsiniz.

Sayfa1'i de kod ile gizleyebilirsiniz bu durumda göster menüsünde gözükmez.
Gizlemek için Sheets("Sayfa1").Visible = xlSheetVeryHidden
Göstermek için Sheets("Sayfa1").Visible = xlSheetVisible
kodlarını kullanabilirsiniz.
 
Son düzenleme:

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Merhaba

Makrolarımız çalışırken sayfalar arası geçişler bize gösterilir.
Makro çok kısa sürede işini bitirsede sayfalar arası anlık geçişler hissedilir ve bu kullanıcının göz zevkini rahatsız eder.

Bunun önlenmesi için;

Application.ScreenUpdating = False

kodunu makromuzda kullanırız.

Makro kodunun başlarına bu kodu yazarak ekran güncellenmesi kullanıcıya gösterilmez.
Fakat makro kodlarımızın sonlarına doğruda

Application.ScreenUpdating = True

kodunuda yazmalıyızki makro işini bitirdiğinde ne olup bittiğini yani sonucu ekranda görebilelim.

Kolay Gelsin..
 

leonadies

Excel Derya Deniz Bizde Kulaç Atmaya Çalışıyoruz:)
Altın Üye
Katılım
12 Şubat 2015
Mesajlar
515
Excel Vers. ve Dili
Office 2016 TR 64 Bit Windows
Altın Üyelik Bitiş Tarihi
01-02-2027
Merhaba,
Kodlarınızın başına Application.ScreenUpdating = False sonuna da Application.ScreenUpdating = True satırlarını ilave ederseniz ekrandaki değişimleri görmezsiniz.

Sayfa1'i de kod ile gizleyebilirsiniz bu durumda göster menüsünde gözükmez.
Gizlemek için Sheets("Sayfa1").Visible = xlSheetVeryHidden
Göstermek için Sheets("Sayfa1").Visible = xlSheetVisible
kodlarını kullanabilirsiniz.
Ömer Bey Merhaba teşekkür ederim Application.ScreenUpdating ile olay çözüldü :) Ancak sayfa gizleme kodlarını nereye yazmam gerekitğini anlayamadım. Makrolarım hep sayfa 1e bazı veriler atıyor bu nedenle de gizli kalması önemli. Makrolar burayla alışverişte bulunsun ama gözükmesin derdindeyim. Kullanıcı göster diyerek de açamamalı. Gizleyince çalışmassa da işim olmuyor :)
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,108
Excel Vers. ve Dili
2007 Türkçe
Müstakil bir makro kodunun içine yazıp deneyiniz. Mesela;
Kod:
Sub gizle()
Sheets("Sayfa1").Visible = xlSheetVeryHidden
End Sub
Bununla birlikte makrosuz olarak yapmak isterseniz gözden geçir sekmesi altındaki çalışma kitabını koru menüsünü de deneyebilirsiniz.
Ancak makro kodlarınız gizlemek istediğiniz bu sayfayı aktifleştirerek işlem yapıyorsa sayfayı gizlemeniz kodlarınızın hata vermesine neden olacaktır.
 

leonadies

Excel Derya Deniz Bizde Kulaç Atmaya Çalışıyoruz:)
Altın Üye
Katılım
12 Şubat 2015
Mesajlar
515
Excel Vers. ve Dili
Office 2016 TR 64 Bit Windows
Altın Üyelik Bitiş Tarihi
01-02-2027
"Ancak makro kodlarınız gizlemek istediğiniz bu sayfayı aktifleştirerek işlem yapıyorsa sayfayı gizlemeniz kodlarınızın hata vermesine neden olacaktır. "

Tam olarak bu durum içindeyim :)
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,108
Excel Vers. ve Dili
2007 Türkçe
Kullandığınız makro kodlarının baş ve son tarafını aşağıdaki mantığa göre düzenleyiniz.
Kod:
Sub xxxxxx()
Application.ScreenUpdating = False
Sheets("Sayfa1").Visible = xlSheetVisible
.
.
.
.
Sheets("Sayfa1").Visible = xlSheetVeryHidden
Application.ScreenUpdating = True
End Sub
 

leonadies

Excel Derya Deniz Bizde Kulaç Atmaya Çalışıyoruz:)
Altın Üye
Katılım
12 Şubat 2015
Mesajlar
515
Excel Vers. ve Dili
Office 2016 TR 64 Bit Windows
Altın Üyelik Bitiş Tarihi
01-02-2027
Teşekkür ederim bu şekilde oldu :) Göster pasifize de oldu.
Azcık deneyimli birisi kurcalasa Vba ağacından açabilecek durumda oldu bu şekilde. buraya nasıl bir önlem alırız? bu yüzden sekmeyi şifre ile açmak mantıklı geliyordu bana yolu varmıdır?
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,108
Excel Vers. ve Dili
2007 Türkçe
Deneyimli birisi için önlem alamazsınız :) Belki biraz zorlaştırırsınız o kadar.
Şifre ile koruyacağınızı düşünüyorsanız vba'ya şifre koyabilirsiniz. (Vba editör içerisinde Tools>VBA project properties>Protection adımını takip ediniz)
İyi çalışmalar...
 

leonadies

Excel Derya Deniz Bizde Kulaç Atmaya Çalışıyoruz:)
Altın Üye
Katılım
12 Şubat 2015
Mesajlar
515
Excel Vers. ve Dili
Office 2016 TR 64 Bit Windows
Altın Üyelik Bitiş Tarihi
01-02-2027
Aynen öyle çok teşekkür ederim :)
 
Üst