UserForm Resize Özelliği Eklemek

26 Aralık 2020 26 Aralık 2020 864

UserForm Resize Özelliği Eklemek isimli kodlar UserForm nesnenizi istediğiniz gibi boyutlandırmanızı sağlayacak niteliktedir.

Option Explicit

Private Const MResizer = "ResizeGrab"
Private WithEvents m_objResizer As MSForms.Label
Private m_sngLeftResizePos As Single
Private m_sngTopResizePos As Single
Private m_blnResizing As Single

Private Sub m_AddResizer()
    Set m_objResizer = Me.Controls.Add("Forms.label.1", MResizer, True)
    With m_objResizer
        With .Font
            .Name = "Marlett"
            .Charset = 2
            .Size = 14
            .Bold = True
        End With
        .BackStyle = fmBackStyleTransparent
        .AutoSize = True
        .BorderStyle = fmBorderStyleNone
        .Caption = "o"
        .MousePointer = fmMousePointerSizeNWSE
        .ForeColor = RGB(100, 100, 100)
        .ZOrder
        .Top = Me.InsideHeight - .Height
        .Left = Me.InsideWidth - .Width
    End With
End Sub

Private Sub CommandButton1_Click()
    Unload Me
End Sub

Private Sub m_objResizer_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If Button = 1 Then
        m_sngLeftResizePos = X
        m_sngTopResizePos = Y
        m_blnResizing = True
    End If
End Sub

Private Sub m_objResizer_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If Button = 1 Then
        With m_objResizer
            .Move .Left + X - m_sngLeftResizePos, .Top + Y - m_sngTopResizePos
            Me.Width = Me.Width + X - m_sngLeftResizePos
            Me.Height = Me.Height + Y - m_sngTopResizePos
            .Left = Me.InsideWidth - .Width
            .Top = Me.InsideHeight - .Height
        End With
    End If
End Sub

Private Sub m_objResizer_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If Button = 1 Then
        m_blnResizing = False
    End If
End Sub

Private Sub UserForm_Initialize()
    m_AddResizer
End Sub

Private Sub UserForm_Terminate()
    Me.Controls.Remove MResizer
End Sub

Gerekli Adımlar

Kodu çalıştırmanız için aşağıdaki adımları yerine getirmeniz gerekir.

  1. Microsoft Visual Basic for Applications penceresini (Alt + F11) açın.
  2. Project - VBAProject alanının, ekranın sol tarafında görüldüğünden emin olun. Görünmüyorsa, Ctrl + R kısayolu ile hızlıca açın.
  3. Araç çubuklarından Insert -> UserForm yazısına tıklayın.
  4. Solunda klasör simgesi olan Forms yazısının başındaki + simgesine tıklayın.
  5. Alt kısma eklenecek olan UserForm(1) yazısına çift tıklayın.
  6. Üstteki kodu yapıştırın.

Kod Açıklaması

Üstteki kodları bir UserForm nesnesine eklerseniz, açıldığında boyutları ile istediğiniz gibi ekran üzerinden oynayabilirsiniz. 64 bit Ofis Sürümlerinde kodlar çalışmayabilir.

50 Farklı Hazır Makro (VBA) Kodu
Grafiği Görüntü Olarak Yapıştırma
Excel Satır Seçme Kodu
Pivot Tablo Alt Toplamlarını Gizleme
ListBox Üzerindeki Verilere Çoklu Seçim Yapma
Excel Kitabındaki Sayfa Adlarının Listelenmesi
Açılışta İstediğiniz Sayfanın Aktif Edilmesi
Sütun Genişliğini Ayarla
Tüm Çalışma Sayfalarını Gösterme
Çalışma Kitabındaki Tüm Pivot Tabloları Yenileme
Bir sayfadaki Veriyi Diğer Sayfaya Aktarma
Excel Makro Modulü Silme Kodu
Sayfadaki Kelime ve Sayı Adetlerini Bulma
Hücreye Girilen Değerleri Farklı Bir Sayfaya Kaydetme
Birleştirilmiş Tüm Hücreleri Ayırma
Bir Kitaptaki Sayfaları Başka Kitaba Taşıma
Excel Sayfalarındaki Resimleri Silmek
Hücre İçerisine Kelime Ekleme
Tüm Çalışma Kitaplarını Aynı Anda Kapatma
UserForm Nesnesine Otomatik Buton Ekleme
Bir Aralıktaki Maksimum Değeri Renklendirme
Excel Makroları ile Dosya Sayısını Bulma
Aktif Hücrenin Satır Numarasını Bulma
Excel Makroları ile İşlemci Bilgilerini Bulma
İstenilen Şart Sağlanmıyorsa Kayıt Gerçekleşmesin
İçindekiler Tablosu Oluşturma
Sürücü Adı Kontrolü Yapma
Alfabenin Harflerini Sayfaya Sıralı Olarak Ekleme
Tek Satırı Kes Kopyala ve Yapıştır
Toplama İşlemi Yapan Kullanıcı Tanımlı Fonksiyon
Kopyala ve Özel Yapıştır
Birden Çok Sütun Ekleme
Hangi Günde Olduğunu Bulma
Excel Makro ile Hücreye Veri Yazma
Kapanış Mesajı Ekleme
Sütunlardaki Farkı Renklendirme
Otomatik Sıra Numarası Ekleme
Makrolar ile Dosyaları Kopyalama
Belirli Metni Vurgulama
Satır Yüksekliklerini Otomatik Ayarlama
Aç Penceresini Açan Makro
Excel Makroları ile Dosya Taşıma
Yorumları Yazdırma
Program Başlangıcı Kodları
Sayıları Rastgele Karıştırmak
Tüm Satırları ve Sütunları Gösterme
İlk ve Son Hücre Arasındaki Satır Sayısı
Otomatik Olarak Tarih ve Zaman Ekleme
Açık Olan Tüm Excel Sayfalarını Kayıt Ederek Kapatma
Bir Sayfadaki Veriyi Diğer Sayfalara Kopyalama
Excel Makroları ile Hücreye Saat Ekleme

Daha önce yorum yapılmamış!

Backlink Reklam Bu alanda 50 karakterlik açıklama ile web sitenize ait Backlink Reklam yayınlayabilirsiniz.
Yükleniyor...