OVH Cloud OVH Cloud

Je ne comprends pas !!

6 réponses
Avatar
Yves
Bonsoir,

J'ai la procédure ci-dessous "Mise_Click" qui fait appel à Modif_enreg en
lui passant l'argument "interf". Cet argument est déclaré comme UserForm
dans la procédure appelée.

Private Sub Mise_Click()
Call Modif_enreg(interf)
End Sub


/----Fonction appelée -----------/

Public Sub Modif_enreg(nom_fenetre As UserForm)
With nom_fenetre
With .ListBox1
.ColumnWidths = "60 pt;60 pt;60 pt;60 pt;60 pt;60pt"
.List = TabData
.ListIndex = 0
End With
.Show
End With
End Sub

Mon problème est que le compilateur détecte une erreur sur ".Show". L'erreur
est la suivante : Erreur d'exécution 438, Propriété ou méthode non générée
par cet objet.

Malgré le fait que j'ai changé le type "nom_fenetre As" en autre chose, ça
ne marche tjs pas.
Quelqu'un peut-il me dire comment résoudre le problème ?

Merci

6 réponses

Avatar
isabelle
bonjour Yves,

est ce que le userform est chargé et visible lors de l'execution de
cette macro ?

isabelle


Bonsoir,

J'ai la procédure ci-dessous "Mise_Click" qui fait appel à Modif_enreg en
lui passant l'argument "interf". Cet argument est déclaré comme UserForm
dans la procédure appelée.

Private Sub Mise_Click()
Call Modif_enreg(interf)
End Sub

/----Fonction appelée -----------/

Public Sub Modif_enreg(nom_fenetre As UserForm)
With nom_fenetre
With .ListBox1
.ColumnWidths = "60 pt;60 pt;60 pt;60 pt;60 pt;60pt"
.List = TabData
.ListIndex = 0
End With
.Show
End With
End Sub

Mon problème est que le compilateur détecte une erreur sur ".Show". L'erreur
est la suivante : Erreur d'exécution 438, Propriété ou méthode non générée
par cet objet.

Malgré le fait que j'ai changé le type "nom_fenetre As" en autre chose, ça
ne marche tjs pas.
Quelqu'un peut-il me dire comment résoudre le problème ?

Merci


Avatar
Yves
Non, il n'est pas chargé.


"isabelle" a écrit dans le message de news:

bonjour Yves,

est ce que le userform est chargé et visible lors de l'execution de
cette macro ?

isabelle


Bonsoir,

J'ai la procédure ci-dessous "Mise_Click" qui fait appel à Modif_enreg
en


lui passant l'argument "interf". Cet argument est déclaré comme UserForm
dans la procédure appelée.

Private Sub Mise_Click()
Call Modif_enreg(interf)
End Sub

/----Fonction appelée -----------/

Public Sub Modif_enreg(nom_fenetre As UserForm)
With nom_fenetre
With .ListBox1
.ColumnWidths = "60 pt;60 pt;60 pt;60 pt;60 pt;60pt"
.List = TabData
.ListIndex = 0
End With
.Show
End With
End Sub

Mon problème est que le compilateur détecte une erreur sur ".Show".
L'erreur


est la suivante : Erreur d'exécution 438, Propriété ou méthode non
générée


par cet objet.

Malgré le fait que j'ai changé le type "nom_fenetre As" en autre chose,
ça


ne marche tjs pas.
Quelqu'un peut-il me dire comment résoudre le problème ?

Merci




Avatar
sabatier
tu remplaces userform par pétard et macro par racaille et cette fois, tu
comprends quel est le sentiment qui m'anime quand je pense à philippe R...
jps

isabelle a écrit:
bonjour Yves,

est ce que le userform est chargé et visible lors de l'execution de
cette macro ?

isabelle


Bonsoir,

J'ai la procédure ci-dessous "Mise_Click" qui fait appel à Modif_enreg en
lui passant l'argument "interf". Cet argument est déclaré comme UserForm
dans la procédure appelée.

Private Sub Mise_Click()
Call Modif_enreg(interf)
End Sub

/----Fonction appelée -----------/

Public Sub Modif_enreg(nom_fenetre As UserForm)
With nom_fenetre
With .ListBox1
.ColumnWidths = "60 pt;60 pt;60 pt;60 pt;60 pt;60pt"
.List = TabData
.ListIndex = 0
End With
.Show
End With
End Sub

Mon problème est que le compilateur détecte une erreur sur ".Show". L'erreur
est la suivante : Erreur d'exécution 438, Propriété ou méthode non générée
par cet objet.

Malgré le fait que j'ai changé le type "nom_fenetre As" en autre chose, ça
ne marche tjs pas.
Quelqu'un peut-il me dire comment résoudre le problème ?

Merci





Avatar
isabelle
l'erreur vient de là car excel ne le trouve pas,
ajoute en début de macro

Load nom_fenetre

isabelle


Non, il n'est pas chargé.

"isabelle" a écrit dans le message de news:

bonjour Yves,

est ce que le userform est chargé et visible lors de l'execution de
cette macro ?

isabelle


Bonsoir,

J'ai la procédure ci-dessous "Mise_Click" qui fait appel à Modif_enreg
en


lui passant l'argument "interf". Cet argument est déclaré comme UserForm
dans la procédure appelée.

Private Sub Mise_Click()
Call Modif_enreg(interf)
End Sub

/----Fonction appelée -----------/

Public Sub Modif_enreg(nom_fenetre As UserForm)
With nom_fenetre
With .ListBox1
.ColumnWidths = "60 pt;60 pt;60 pt;60 pt;60 pt;60pt"
.List = TabData
.ListIndex = 0
End With
.Show
End With
End Sub

Mon problème est que le compilateur détecte une erreur sur ".Show".
L'erreur


est la suivante : Erreur d'exécution 438, Propriété ou méthode non
générée


par cet objet.

Malgré le fait que j'ai changé le type "nom_fenetre As" en autre chose,
ça


ne marche tjs pas.
Quelqu'un peut-il me dire comment résoudre le problème ?

Merci






Avatar
Denis Michon
Bonjour Yves,

Essaie ce cette façon :

'--------------------------
Private Sub Mise_Click()

Dim Formulaire As Object
'Userform1 = Le nom de la propriété "Name" de l'objet
Formulaire = ThisWorkbook.VBProject.VBComponents("userform1")
Modif_enreg Formulaire
Set Formulaire = Nothing

End Sub

'--------------------------
Public Sub Modif_enreg(nom_fenetre As Object)

With VBA.UserForms.Add(nom_fenetre.Name)
With .ListBox1
.ColumnWidths = "60 pt;60 pt;60 pt;60 pt;60 pt;60pt"
.List = TabData
.ListIndex = 0
End With
.Show
End With

End Sub
'--------------------------


Salutations!



"Yves" a écrit dans le message de news:3f7f16ce$0$2775$
Bonsoir,

J'ai la procédure ci-dessous "Mise_Click" qui fait appel à Modif_enreg en
lui passant l'argument "interf". Cet argument est déclaré comme UserForm
dans la procédure appelée.

Private Sub Mise_Click()
Call Modif_enreg(interf)
End Sub


/----Fonction appelée -----------/

Public Sub Modif_enreg(nom_fenetre As UserForm)
With nom_fenetre
With .ListBox1
.ColumnWidths = "60 pt;60 pt;60 pt;60 pt;60 pt;60pt"
.List = TabData
.ListIndex = 0
End With
.Show
End With
End Sub

Mon problème est que le compilateur détecte une erreur sur ".Show". L'erreur
est la suivante : Erreur d'exécution 438, Propriété ou méthode non générée
par cet objet.

Malgré le fait que j'ai changé le type "nom_fenetre As" en autre chose, ça
ne marche tjs pas.
Quelqu'un peut-il me dire comment résoudre le problème ?

Merci
Avatar
Philippe.R
Re :op)
Et penser à remplacer chargé par mouillé !

"sabatier" a écrit dans le message de news:
tu remplaces userform par pétard et macro par racaille et cette fois, tu
comprends quel est le sentiment qui m'anime quand je pense à philippe R...
jps

isabelle a écrit:
bonjour Yves,

est ce que le userform est chargé et visible lors de l'execution de
cette macro ?

isabelle


Bonsoir,

J'ai la procédure ci-dessous "Mise_Click" qui fait appel à Modif_enreg en
lui passant l'argument "interf". Cet argument est déclaré comme UserForm
dans la procédure appelée.

Private Sub Mise_Click()
Call Modif_enreg(interf)
End Sub

/----Fonction appelée -----------/

Public Sub Modif_enreg(nom_fenetre As UserForm)
With nom_fenetre
With .ListBox1
.ColumnWidths = "60 pt;60 pt;60 pt;60 pt;60 pt;60pt"
.List = TabData
.ListIndex = 0
End With
.Show
End With
End Sub

Mon problème est que le compilateur détecte une erreur sur ".Show". L'erreur
est la suivante : Erreur d'exécution 438, Propriété ou méthode non générée
par cet objet.

Malgré le fait que j'ai changé le type "nom_fenetre As" en autre chose, ça
ne marche tjs pas.
Quelqu'un peut-il me dire comment résoudre le problème ?

Merci