Microsoft 365 InputBox est-il possible de masquer la barre de titre ?

Usine à gaz

XLDnaute Barbatruc
Bonjour à toutes et à tous,
Je vous souhaite une très beau WE :)

J'aimerais pouvoir "masquer la barre de titre" de mon InputBox.
1625300612468.png

J'ai fait des recherches mais je n'ai rien trouvé à l'instant et ce n'est peut-être pas possible !

Mais avec nos Supers Ténors, tout ou presque est possible, alors je pose la question.

Je joins un fichier test et je continue mes recherches.
Merci à toutes et à tous,
Amicalement,
lionel,
 

Pièces jointes

  • recherche_inputbox.xlsm
    30 KB · Affichages: 24
Solution
re,

je l'ai intégré en lieu et place de l'inputbox, trois lignes de code, je te laisse modifier l'userform à ton goût !

[édition : code modifié pour remise à zéro de la valeur de recherche en recherches successives ]

Bien cordialement, @+

danielco

XLDnaute Accro
Je n'ai rien inventé. Le code provient de cette page :
https://worksheetsvba.com/en/remove-title-bar-from-userform
Dans un module standard :
VB:
Private Const GWL_STYLE = -16
Private Const WS_CAPTION = &HC00000

#If VBA7 Then
    Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPtr
    #If Win64 Then
        Private Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongPtrA" (ByVal hWnd As LongPtr, ByVal nIndex As Long) As LongPtr
        Private Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongPtrA" (ByVal hWnd As LongPtr, ByVal nIndex As Long, ByVal dwNewLong As LongPtr) As LongPtr
    #Else
        Private Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As LongPtr, ByVal nIndex As Long) As LongPtr
        Private Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As LongPtr, ByVal nIndex As Long, ByVal dwNewLong As LongPtr) As LongPtr
    #End If
    Private Declare PtrSafe Function DrawMenuBar Lib "user32" (ByVal hWnd As LongPtr) As Long
#Else
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
    Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Private Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) As Long
#End If

Public Sub HideFormTitleBar(frm As Object)
    #If VBA7 Then
        Dim lStyle As LongPtr, lFrmHandle As LongPtr
    #Else
        Dim lStyle As Long, lFrmHandle As Long
    #End If
    lFrmHandle = FindWindow("ThunderDFrame", frm.Caption)
    lStyle = GetWindowLong(lFrmHandle, GWL_STYLE)
    lStyle = lStyle And Not WS_CAPTION
    SetWindowLong lFrmHandle, GWL_STYLE, lStyle
    DrawMenuBar lFrmHandle
End Sub

Dans le userform :

Code:
Private Sub UserForm_Initialize()
    HideFormTitleBar Me
End Sub

Daniel
 

Usine à gaz

XLDnaute Barbatruc
Re-danielco,
Merci pour ta suggestion :)

C'est ce que je suis en train de faire mais je n'y arrive pas :mad:
Voilà dans le fichier joint où j'en suis,
Si tu a la solution, ça va bien m'arranger :)
lionel,
 

Pièces jointes

  • recherche_uf.xlsm
    51.6 KB · Affichages: 9

Usine à gaz

XLDnaute Barbatruc
Merci danielco ;)

Effectivement ça marche comme le mien mais pas comme je le souhaite :

"Il faudrait qu'à la place de l'UserForm, ce soit la recherche qui s'ouvre, titre masqué,
ou que l'userform contienne la recherche"

Et ça, je n'y arrive pas :mad:

lionel :)
 

Discussions similaires

Statistiques des forums

Discussions
314 665
Messages
2 111 689
Membres
111 259
dernier inscrit
Seb15