• DİKKAT

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

user form gizleme

Katılım
5 Eylül 2007
Mesajlar
1,247
Excel Vers. ve Dili
ofis 2010
iyi günler ; muhasebeci olarak firmalara ait bilgileri form ile giriyorum. form' u aşağıdaki kodlar ile form görünümüne getiriyorum. form görünümünde iken başka bir excel sayfası açtığıma normal açılıyor , sayfa açıkken formu kapattığımda diğer açık sayfalarda formla beraber onun ekinde kapanıyor. bu da hiç kullanışlı olmuyor. form açıp, kapandığına diğer açık excel sayfaların etkilenmemesi mümkünmüdür. teşekkürler.
Kod:
Private Declare Function FindWindowA Lib "user32" _
        (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLongA Lib "user32" _
        (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLongA Lib "user32" _
        (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Kod:
Private Sub UserForm_Activate()
    Dim hWnd As Long, exLong As Long
    hWnd = FindWindowA(vbNullString, Me.Caption)
    exLong = GetWindowLongA(hWnd, -16)
    If (exLong And &H20000) = 0 Then
        SetWindowLongA hWnd, -16, exLong Or &H20000
        Me.Hide
        Me.Show
    End If
End Sub
 

Ekli dosyalar

  • resim.jpg
    resim.jpg
    89.5 KB · Görüntüleme: 28
Bu kod içinde " kapat " komutu yok , olan kodlar me.hide ile göz önünden kaldır ( ama kapatma) ve me.show ile aç diyor.

Bunların dışında , özellikle kapat tuşu altındaki kodlarda Application.quit olarak yazılmış ve herşeyi kapatan bir kod olması gerek. Bu kodları aldığınız yerde , userformun tasarım halinde kapat tuşuna çift tıkladığınızda yüksek olasılıkla bu kodun yazıldığı yerde olursunuz.
O kodu silip

Thisworkbook.close yazın save edin ve kapatın açın . Bu kod bu kitabı kapat der, excel değil ama bu çalışma kitabı kapanır , başka açık varsa etkilemez.
 
kapat sorunu tama ama

Bu kod içinde " kapat " komutu yok , olan kodlar me.hide ile göz önünden kaldır ( ama kapatma) ve me.show ile aç diyor.

Bunların dışında , özellikle kapat tuşu altındaki kodlarda Application.quit olarak yazılmış ve herşeyi kapatan bir kod olması gerek. Bu kodları aldığınız yerde , userformun tasarım halinde kapat tuşuna çift tıkladığınızda yüksek olasılıkla bu kodun yazıldığı yerde olursunuz.
O kodu silip

Thisworkbook.close yazın save edin ve kapatın açın . Bu kod bu kitabı kapat der, excel değil ama bu çalışma kitabı kapanır , başka açık varsa etkilemez.

Evet kapatma
Kod:
Private Sub CommandButton6_Click()
Unload Me

cvp = MsgBox("Kaydetmek İstiyormusunuz ?", vbYesNo)
If cvp = vbNo Then
ActiveWorkbook.Close Saved = True
Else
ActiveWorkbook.Close Saved = False
End If
End Sub
activeWorkbook olan kısmı ThisWorkbook olarak değiştirdim kapanışta sorun kalkmış oldu, bu seferde açık excel sayfası varsa , formu çalıştırınca açılıp direk form haline geldiği için , açık excel sayfasınıda bünyesine katarak görünmez yapıyor, bunu halledebilirsek sorun kalkacak. teşekkürler.
 
Geri
Üst