Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Code vba signifiant qu'un userform est ouvert.

13GIBE59

XLDnaute Accro
Bonjour les p’tits loups,

Vous vous souvenez peut-être de mon fichier « Comptes », disponible ici. Je l’ai modifié en ajoutant une colonne après la colonne « Date », intitulée « Date d’encaissement ». J’ai modifié tous les codes, et tout fonctionne à peu près à 95 % (quelques retouches à apporter).


L’objet de ma demande est celui-ci : lorsqu’on ouvre le userform « Filtre » (bouton du même nom), celui-ci contient une listview alimentée par une partie des lignes du fichier, et par des images correspondant aux infos de la colonne J (coche ou non coche).

Ce UserFormfiltre est non modal, on peut donc impacter la feuille quand il est ouvert. Je souhaite pouvoir agir sur la colonne J (cocher ou décocher une cellule) et récupérer ces informations sur la listview sans fermer et rouvrir le userformfiltre.


Je cherche donc un code du genre à insérer dans la feuille « Comptes » :


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 10 And Target.Count = 1 And Target.Row > 8 Then
If UserFormFiltre est ouvert
Réinitialiser/recalculer/reremplir le UserFormFiltre
End If
End If
End Sub


Vous savez faire ça ?
Merci d'avance.

JB

PS : dans le fichier joint, j'ai dû supprimer quelques onglets pour cause de poids, mais la macro "Filtre" fonctionne.
 

Pièces jointes

  • Essai comptes allégé.zip
    663.6 KB · Affichages: 77

job75

XLDnaute Barbatruc
Re : Code vba signifiant qu'un userform est ouvert.

Re,

Qu'est-ce qui ne marche pas ? Il y a un bug ou l'USF n'est pas trouvé ?

Sur Excel 2013 aucun problème, c'est étrange que ça ne fonctionne pas sur 2007.

A+
 

job75

XLDnaute Barbatruc
Re : Code vba signifiant qu'un userform est ouvert.

Re,

Attention pour que le code du post #13 fonctionne bien il faut remplacer UserForm_Initialize par UserForm_Activate.

Comme indiqué par Paf au post #8.

A+
 

tototiti2008

XLDnaute Barbatruc
Dernière édition:

Paf

XLDnaute Barbatruc
Re : Code vba signifiant qu'un userform est ouvert.

Re tous et bonsoir tototiti2008

En supprimant le Flag (voir post 9), tout fonctionne très bien, merci !

J'avais oublié un détail (!) la variable doit être déclarée en Public dans un module standard !

Sans ce test sur USF ouvert, ça revient à "rafraichir" ou à ouvrir l'USF. Ce n'est plus nécessaire de savoir si l'USF est déjà ouvert?

A+
 

Discussions similaires

Réponses
8
Affichages
708
Réponses
6
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…