Bu dosya, Excel'de uzun süren işlemler sırasında ekranda dönen bir "yükleniyor" simgesi göstermek için hazırlanmış şablondur. Simge, VBA UserForm üzerine yerleştirilmiş hareketli bir GIF görüntüsüyle gösterilir. Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- exceldestek.com | exceldepo.com: B2:E10 aralığında yer alan tek çalışma sayfasıdır. Üzerinde Rectangle1 adlı şekil bulunur ve makro bu şekle atanmıştır. Sayfada formül, tablo, grafik veya veri doğrulama yoktur.
- Loader: Dönen simgenin gösterildiği UserForm'dur. Simge, formun içine base64 olarak gömülmüş GIF görüntüsüyle çizilir.
- Module4: Şekle tıklandığında çalışan Rectangle1_Tıkla makrosunu içerir.
Makrolar
- Rectangle1_Tıkla: Sayfadaki şekle tıklandığında çalışır. Form zaten açıksa Loader.Running kontrolüyle işlemden çıkar. Aksi halde formu açar, 200000 turluk bir DoEvents döngüsüyle bekleme süresini simüle eder ve ardından Loader formunu kapatır.
- Running: Form görünür değilse formu gösterir, görünürse True değerini döndürür. Böylece form üst üste açılmaz.
- UserForm_Activate: Form etkinleştiğinde HTML ve GIF verisini oluşturur ve hareketli simgeyi forma yükler.
- UserForm_Initialize: Form açılırken pencere ayarlarını yapar. Kod, User32 ve kernel32 kütüphanelerindeki pencere işlevlerini (SetWindowLong, SetLayeredWindowAttributes, GetSystemMetrics, GetTickCount gibi) çağırarak pencere stilini ve saydamlığı düzenler.
- UserForm_Terminate: Form kapanırken çalışır.
- Pause: Zamanlama amaçlı bekleme yordamıdır.
Nasıl kullanılır
- Dosyayı açın ve güvenlik uyarısında makroları etkinleştirin.
- Sayfadaki Rectangle1 şekline tıklayın; dönen simge formu ekranda görünür.
- Bekleme süresi dolunca form otomatik kapanır. Süreyi değiştirmek için Module4 içindeki döngü sayısı (200000) ayarlanır.
- Kendi çalışmanızda kullanmak için uzun işleminizin kodunu döngünün yerine yerleştirin; işlem başında Loader.Show, bitişinde Unload Loader kullanın.