Cacher la croix de fermeture d'un UserForm ?

Bonjour à tous,

Une nouvelle question,

Comment cacher le nom et la croix de fermeture d'un UserForm

avant l'impression

Merci de votre aide

Pierrot

uf

Bonjour

pour supprimer la croix :

http://www.commentcamarche.net/faq/12794-vba-enlever-la-croix-rouge-d-un-userform

pour supprimer le nom suffit de mettre une espace dans "CAPTION" des paramètres du userform

Fred

Bonjour, fred2406

Pour cacher le nom, cela marche mais pour la croix, j'ai des msg d'erreurs

Merci pour ton aide

Amicalement

Pierrot

re

il est vrai que j'avais mis ce lien en mémoire dans ma bibliothèque, mais jamais utilisé...

je vais faire un essai

fred


Tu viens de valider le post.... tu as trouvé la solution ?

fred

Sinon, tu laisses tomber, une croix en plus, ce n'est pas grave

à chacun la sienne

Pierrot

par contre ce que j'ai déjà fait c'est la laissé mais la rendre inopérente.... avec ceci :

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    Cancel = CloseMode = 0
End Sub

fred

Voilà, Fred, c'est parfait,

ceci clôture mon problème,

Un tout grand merci pour ton aide et bonne soirée

Amicalement, je viens de fêter mes 19 ans ce 29 février

en réalité, j'en ai 76

Pierrot

Re

je viens de retrouvé la bonne syntaxe pour les machines recente....

(cela fonctionne chez moi sur W7 64 bits / office 2007 32bits

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
Private Sub UserForm_Initialize()
Dim hwnd As Long
  hwnd = FindWindow(vbNullString, Me.Caption)
  Style = GetWindowLong(hwnd, -16) And &HFFF7FFFF
  SetWindowLong hwnd, -16, Style
  DrawMenuBar hwnd
End Sub

et pour supprimer purement et simplement la barre de titre :

Style = GetWindowLong(hwnd, -16) And Not &HC00000 'supression de la barre de titre...

Fred


Mais attention cela ne fonctionnera pas sur les Office 64 bits.... autre manière de déclarer........

c'est la raison pour laquelle je ne l'avais pas mis en oeuvre dans un fichier que j'ai fourni a plusieurs collègues qui ont un parc de MS office très différents.... et que j'avais simplement inhiber le fonctionnement du bouton .... a toi de savoir a qui sera destiné ton fichier....

fred

La suppression définitive de la barre ne fonctionne pas

la croix est désactivée, c'est suffisant

Merci pour tout

Pierrot

tu es avec quelles version d'office 2010 ??? 64 bits ??

fred

Bonjour, Fred

exactement, office 2010 64 bits

mais j'ai laissé tomber cette croix

Bonne journée

Pierrot

fred2406 a écrit :

Re

je viens de retrouvé la bonne syntaxe pour les machines recente....

(cela fonctionne chez moi sur W7 64 bits / office 2007 32bits

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
Private Sub UserForm_Initialize()
Dim hwnd As Long
  hwnd = FindWindow(vbNullString, Me.Caption)
  Style = GetWindowLong(hwnd, -16) And &HFFF7FFFF
  SetWindowLong hwnd, -16, Style
  DrawMenuBar hwnd
End Sub

et pour supprimer purement et simplement la barre de titre :

Style = GetWindowLong(hwnd, -16) And Not &HC00000 'supression de la barre de titre...

Fred


Mais attention cela ne fonctionnera pas sur les Office 64 bits.... autre manière de déclarer........

c'est la raison pour laquelle je ne l'avais pas mis en oeuvre dans un fichier que j'ai fourni a plusieurs collègues qui ont un parc de MS office très différents.... et que j'avais simplement inhiber le fonctionnement du bouton .... a toi de savoir a qui sera destiné ton fichier....

fred

ça fonctionne très bien pour moi

est ce qu'il existe la même manip mais pour masquer le titre du fichier lui même ?

merci beaucoup

Bonjour

désolé je ne sais pas....

fais un nouveau sujet... peut-être que quelqu'un sais...

a+

fred

Bonjour pierre

pour ne pas voir le titre tu enleve le Style

A+

Maurice

Dim hwnd As Long

hwnd = FindWindow(vbNullString, Me.Caption)

'Style = GetWindowLong(hwnd, -16) And &HFFF7FFFF

SetWindowLong hwnd, -16, Style

DrawMenuBar hwnd


re

j'ais trouver il faut changer l'adresses du Style

hwnd = FindWindow(vbNullString, Me.Caption)

Style = GetWindowLong(hwnd, -16) And Not &HC00000

SetWindowLong hwnd, -16, Style

DrawMenuBar hwnd

A+

Maurice

Rechercher des sujets similaires à "cacher croix fermeture userform"