• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Sayfada Frame

  • Konbuyu başlatan Konbuyu başlatan Orion1
  • Başlangıç tarihi Başlangıç tarihi

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,239
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba
Sayfada frame kullandım.Üzerlerine command butonlar koydum.Falkat tasarım modundan çıkınca butonlar en alta gidiyor.Butonların üstte kalması için ne yapmalıyım.Dosyayı ekledim.
 

Ekli dosyalar

Merhaba,

İş sayfaya koyunca değişiyor sanırım. Butonlar Frame'in arkasında kalıyorlar.
 
Tasarım modundayken frame nesnesini seçin ve üzerinde sağ-klik yaparak açılan pencereden frame nesnesi-editi seçin. Daha son edit konumunda tekrar sağ-klik yaparsanız açılan pencerede toolbox yazısını göreceksiniz. Buna tıklayarak açılan pencereden ilgili nesneleri frame üzerine yerleştirseniz sorununuz çözülecek ve nesneler frame içinde kalacaktır.
 
Açıklayıcı resimlerde ektedir.

frame1.JPG


frame2.JPG
 
Teşekkür ederim.Levent bey .
Zeki beyinde dediği gibi eventleri yok.
Bunu kullanmamak daha doğru olacak galiba.
 
Levent Bey' in resimli anlatımına ek olarak VBA açısından eksikliğini ve çözümünü eklemek istiyorum.

Excel sayfası üzerine çizilen Frame nesnesi üzerindeki denetimlerin kendi olay(Event) ı yoktur.

Bu eksikliği gidermek için nesneler birer değişkene atanır. Tanımlanacak nesne değişkenler standart nesne değişeknlerinden farklı olarak "WithEvents" deyimi ile tanımlanır.
Yani, sadece değişken tipine has metot ve özellikleri (Properties) değil, olay(Event) ları da birlikte gelir.

Daha iyi anlaşılması açısından Evren Bey' in ekli dosyasında bu tanımlar yapılmıştır.

Sayfa1 modulu:
Kod:
Dim WithEvents c1 As CommandButton
Dim WithEvents c2 As CommandButton

Private Sub c1_Click()
    MsgBox "Benim adım : CommandButon '1'"
End Sub

Private Sub c2_Click()
    MsgBox "Benim adım : CommandButon '2'"
End Sub

Private Sub Nesne_Ata()
    With Me.Frame1
       Set c1 = .Controls("CommandButton1")
       Set c2 = .Controls("CommandButton2")
    End With
End Sub

Private Sub Nesne_Sil()
    With Me.Frame1
       Set c1 = Nothing
       Set c2 = Nothing
    End With
End Sub

Private Sub Worksheet_Activate()
[COLOR=DarkGreen]'    With Me.Frame1
'       Set c1 = .Controls("CommandButton1")
'       Set c2 = .Controls("CommandButton2")
'    End With[/COLOR]
End Sub

Private Sub Worksheet_Deactivate()
[COLOR=DarkGreen]'    With Me.Frame1
'       Set c1 = Nothing
'       Set c2 = Nothing
'    End With[/COLOR]
End Sub
Modul1:
Kod:
Sub auto_open()
Application.Run _
    Sheets("Sayfa1").Name & _
            ".Nesne_Ata"
    
   [COLOR=DarkGreen] '-- Run ile bir olayı da istendiğinde çalıştırabiliriz.
    
    'Application.Run _
        Sheets("Sayfa1").Name & _
            ".Worksheet_[B]Activate[/B]"[/COLOR]
End Sub

Sub auto_close()
Application.Run _
    Sheets("Sayfa1").Name & _
            ".Nesne_Sil"
            
    [COLOR=DarkGreen]'-- Run ile bir olayı da istendiğinde çalıştırabiliriz.
    
    'Application.Run _
        Sheets("Sayfa1").Name & _
            ".Worksheet_[B]Deactivate[/B]"[/COLOR]
End Sub
 

Ekli dosyalar

Zeki bey önemli açıklamalarınız ve örneğiniz için teşekkür ederim. Farklı amaçlar içinde kullanılabilecek bir özelliği gündeme getirmiş oldunuz. Elinize sağlık.
 
Geri
Üst