Type defini par l'utilisateur non defini

Résolu
Thierry -  
 thierry -
Bonjour Tout le monde,

Quelqu'un aurait la solution je suis bloqué

Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As StringPtr, ByVal lpWindowName As StringPtr) As Long

Private Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As LongPtr, ByVal nIndex As LongPtr) As Long
Private Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As LongPtr, ByVal nIndex As LongPtr, ByVal dwNewLong As LongPtr) As Long
Private Declare PtrSafe Function DrawMenuBar Lib "user32" (ByVal hWnd As LongPtr) As Long

Private Sub UserForm_Initialize()
    On Error Resume Next
    Dim hWnd As Long, Style As Long
    hWnd = FindWindow(vbNullString, Me.Caption)
    Style = GetWindowLong(hWnd, -16) And Not &HC00000
    SetWindowLong hWnd, -16, Style
    DrawMenuBar hWnd
End Sub

L'erreur se situe sur le premier paragraphe, merci.

Configuration: Windows / Chrome 96.0.4664.93


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

2 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,
la première chose, c'est de déterminer de quel type il s'agit.
remplace les types par long, pour détecter lequel pose problème.
0
Thierry
 
Bonjour,

Les type sont déjà en long, je ne vois pas de quel type il s'agit ?
Je suis novice en ce qui concerne les Macro trop complexe.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Thierry
 
Un type, c'est un mot qui suit "as". Moi, je ne vois pas que "long".

Tu es novice et tu as écrit cette macro relativement complexe?
0
thierry
 
Oui, mais j'apprend très vite :-), du coup entre temps j'ai réussi à résoudre le problème, j'ai déterminé les lignes non essentiels, j'ai supprimé les composants et plus de problème,
merci beaucoup pour ton aide et bonne soirée.
0