• DİKKAT

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

UserForm çerçeve kaldırmak

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,454
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Arkadaşlar, sayın hocalarım, UserForm'da çerçeve kaldırmak tamam da 2. Bir UserForm olursa nasıl bir yol izlemeliyiz?
Biliyorum sadece görsel.
Teşekkür ederim.
Saygılarımla.
 

Ekli dosyalar

Merhaba,

Aşağıdaki kodu UserForm2'nin kod bölümüne eklemeniz yeterli olacaktır.

C++:
Private Sub UserForm_Initialize()
    HideTitleBar Me
End Sub
 
Merhaba,

Aşağıdaki kodu UserForm2'nin kod bölümüne eklemeniz yeterli olacaktır.

C++:
Private Sub UserForm_Initialize()
    HideTitleBar Me
End Sub

Hocam öncelikle teşekkür ederim.
Hocam ben bunu yaptım zaten ancak şöyle bir hata alıyorum. UserForm ismi farklı olduğu için mi acaba. UserForm1'in adı farklı.


Ekran görüntüsü 2024-02-22 202731.png
 
Aynı kod bloğundan sanırım bir tane daha var. Silerseniz düzelecektir.
 
Aynı kod bloğundan sanırım bir tane daha var. Silerseniz düzelecektir.
Hocam kodu siz yazmıştınız zaten. UserForm kod bölümüne bu kodu.
Boş bir modüle de

Kod:
Option Explicit
Option Private Module

Public Const GWL_STYLE = -16
Public Const WS_CAPTION = &HC00000
#If VBA7 Then
    Public Declare PtrSafe Function GetWindowLong _
                           Lib "user32" Alias "GetWindowLongA" ( _
                           ByVal hwnd As LongPtr, _
                           ByVal nIndex As Long) As Long
    Public Declare PtrSafe Function SetWindowLong _
                           Lib "user32" Alias "SetWindowLongA" ( _
                           ByVal hwnd As LongPtr, _
                           ByVal nIndex As Long, _
                           ByVal dwNewLong As Long) As Long
    Public Declare PtrSafe Function DrawMenuBar _
                           Lib "user32" ( _
                           ByVal hwnd As LongPtr) As Long
    Public Declare PtrSafe Function FindWindowA _
                           Lib "user32" (ByVal lpClassName As String, _
                           ByVal lpWindowName As String) As LongPtr
#Else
    Public Declare Function GetWindowLong _
                           Lib "user32" Alias "GetWindowLongA" ( _
                           ByVal hWnd As Long, _
                           ByVal nIndex As Long) As Long
    Public Declare Function SetWindowLong _
                           Lib "user32" Alias "SetWindowLongA" ( _
                           ByVal hWnd As Long, _
                           ByVal nIndex As Long, _
                           ByVal dwNewLong As Long) As Long
    Public Declare Function DrawMenuBar _
                           Lib "user32" ( _
                           ByVal hWnd As Long) As Long
    Public Declare Function FindWindowA _
                           Lib "user32" (ByVal lpClassName As String, _
                           ByVal lpWindowName As String) As Long
#End If
Sub HideTitleBar(frm As Object)
#If VBA7 Then
    Dim lFrmHdl As LongPtr
#Else
    Dim lFrmHdl As Long
#End If
    Dim lngWindow As Long
    lFrmHdl = FindWindowA(vbNullString, frm.Caption)
    lngWindow = GetWindowLong(lFrmHdl, GWL_STYLE)
    lngWindow = lngWindow And (Not WS_CAPTION)
    Call SetWindowLong(lFrmHdl, GWL_STYLE, lngWindow)
    Call DrawMenuBar(lFrmHdl)
End Sub
 
Şöyle izah edeyim....

İlk mesajda paylaştığınız dosyayı indirdim.
Dosyanızı açtım.
Kodları biraz inceledikten sonra size önerdiğim kodu USERFORM2 nin kod penceresine yapıştırdım.

Sonra ana formu açarak test ettim.

Sonuç : Düzgün şekilde çalıştı...
 
Şöyle izah edeyim....

İlk mesajda paylaştığınız dosyayı indirdim.
Dosyanızı açtım.
Kodları biraz inceledikten sonra size önerdiğim kodu USERFORM2 nin kod penceresine yapıştırdım.

Sonra ana formu açarak test ettim.

Sonuç : Düzgün şekilde çalıştı...

Hocam bende de çalıştı ama esas yaptığım dosyada UserForm isimleri anasayfa cari musteri toplam bu yüzden mi acaba?
 
Olayın UserForm ismiyle bir bağlantısı yoktur...
 
Geri
Üst