Suppression controle dynamique

Signaler
Messages postés
35
Date d'inscription
vendredi 26 janvier 2007
Statut
Membre
Dernière intervention
28 février 2011
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjour,
j'ai un petit soucis et je n'arrive pas à le résoudre.
Ci-dessous un mini programme qui devrait supprimer un controle inséré dynamiquement, mais j'ai le message suivant :
"Erreur d'execution '444'
impossible de supprimer les contrôles . Cette méthode ne peut être utilisée dans ce contexte."

Sub Supp(Usf As UserForm)
For Each varItem In Usf.Controls
   
    typeN = TypeName(Usf.Controls.Item(i))
    MsgBox "typeN = " & typeN
    If typeN = "TextBox" Then
        varName1 = Usf.Controls.Item(i).Name
        MsgBox varName1
        Usf.Controls.Remove (varName1)
    End If
    i = i + 1
Next varItem
End Sub

Auriez-vous une idée ?

Cordialement

4 réponses

Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
"Auriez-vous une idée ?"


oui : tu ne développes pas en VB.Net, déjà ... !!!
Le reste viendra quand tu sauras sous quoi tu développes ... (c'est un minimum)
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
41
salut,
le message d'erreur est pourtant clair : Cette méthode ne peut être utilisée dans ce contexte.

tape [F1] avec l'erreur 444 pour plus d'infos...

un exemple de contexte : click sur un combobox
il y a des évènements et des objets comme çà (des contextes) qui ne permettent pas certaines actions.
tu peux différer pour que l'action ne se fasse pas dans l'évènement actuel, par exemple en passant par un timer à petit intervalle

++
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
35
Date d'inscription
vendredi 26 janvier 2007
Statut
Membre
Dernière intervention
28 février 2011

Bonjour,
Pour répondre jmfmarques :
Il faudra déjà que ce site soit bien fait !

Cela fait plusieurs fois que je souhaite envoyer des messages dans la rubrique
VBA2005 et malheureusement je suis aiguillé ailleurs.

Je ne maîtrise pas l'informatique ...
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
41
c'est vrai que du VBA2005, c'est pas évident....
VBA (APPLICATION) est rangé dans VB6 / dérivés / VBA
VBS (SCRIPT) dans VB6 / dérivés / VBS
et VB.NET/2005 dans VB.NET 2005

pas évident hein?...
VBA étant un dérivé de VB6, aucune raison de le mettre dans DOTNET puisqu'en aucun cas du VBA, même sous office ultimate, n'est "objet" ni n'a besoin d'un framework de DotNet...

plus d'infos ici ; étant un lien de la FAQ (oui oui, tous les sites "mal faits" en ont une...) 

have fun