Bu dosya, bir UserForm'un üzerine çift tıklanınca formu Excel penceresinin boyutuna büyüten, tekrar çift tıklanınca eski boyutuna döndüren VBA örneğini içerir. Form büyürken üzerindeki tüm denetimlerin konumu, boyutu ve yazı tipi büyüklüğü de aynı oranda ölçeklenir.
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- Sheet1: Sayfada yalnızca bir CommandButton bulunur. Düğme UserForm1 formunu açar.
- UserForm1: Büyütme ve küçültme mantığının bulunduğu formdur. Üzerinde Label1 açıklama etiketi ve CommandButton4 düğmesi yer alır.
Makrolar
- CommandButton1_Click (Sheet1): Sayfadaki düğmeye tıklanınca UserForm1 formunu gösterir.
- SnapOriginal: Formun ilk genişlik ve yüksekliğini, her denetimin Left, Top, Width, Height ve yazı tipi boyutu değerlerini bir diziye kaydeder. Kayıt yalnızca bir kez yapılır.
- ResizeMe: Form boyutunun ilk boyuta oranını hesaplar. Denetimlerin konum ve ölçülerini genişlik ve yükseklik oranıyla, yazı tipini ise bu iki oranın küçüğüyle yeniden ayarlar. Bazı denetimlerin desteklemediği özellikler için On Error Resume Next kullanılmıştır.
- UserForm_DblClick: Form Excel penceresinin ölçüsüne ulaşmışsa ilk boyuta döner ve etiket metni "Double Click the form to Maximize" olur. Ulaşmamışsa form, en boy oranı korunarak Excel penceresine sığacak şekilde büyütülür ve etiket "Double Click the form to Minimize" olur. Her iki durumda form yeniden gösterilir.
- CommandButton4_Click: End komutuyla çalışan kodu sonlandırır.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- Sheet1 sayfasındaki düğmeye tıklayarak formu açın.
- Formu büyütmek için üzerine çift tıklayın; denetimler form ile birlikte ölçeklenir.
- Eski boyuta dönmek için formu yeniden çift tıklayın.
- Kodu kendi formunuza uyarlamak için Alt+F11 ile VBA düzenleyicisini açın ve UserForm1 kodunu kendi formunuza kopyalayın. Formunuzda Label1 adlı bir etiket bulunmalıdır.