Bien le bonsoir,
JP, Tu as vu ci-dessus que quand on travaille avec 2 objets, par exemple tes deux userform, pour faire appel à un élément d'un des objets (où à une propriété), il faut faire référence à cet objet.
Si tu ne mets pas cette référence, VBA considère par défaut l'objet actuellement activé. Ainsi, si tu travailles dans une procèdures de ton UserForm Zones (NB: tu as du rectifier ci-dessus, j'avais oublié le s), et que dans ce code, tu écris ListBox1.Listcount sans rien avant, VBA te donnera le nombre de données inscrites dans le ListBox1 du UserForm Zones
Mais si dans cette procédure, tu avais eu à utiliser le nombre d'éléments du ListBox1 du UserForm Optbase, alors il aurait fallu le spécifier: Optbase.ListBox1.ListCount
Et bien, pour travailler avec 2 classeurs différents, c'est la même chose. Il suffit de spécifier devant tout objet à quel classeur il appartient.
Et donc, à chaque fois que tu devras faire référence à une cellule du classeurX, tu écris ClasseurX.Range("D5")...C'est un peu la base de VBA, qui utilise des objets.
Avec cela, tu devrais y arriver. Bon courage