Bonsoir
@SIRYANICE
En attendant ta réponse, une nouvelle version de tes macros pour historiser les saisies et les effacer.
En règle générale il n'est pas nécessaire de sélectionner une cellule pour récupérer ses informations, ni pour modifier les modifier.
Le passage par .Select et par copy puis pastespecial Paste:=xlPasteValues est avantageusement remplacé par
Cellule_Cible.value =
Cellule_Source.value
Cellule_Source et
Cellule_Cible étant des syntaxes ou des objets range pouvant faire référence à des cellules de feuilles différentes (et n'appartenant pas forcément à la feuille active), le passage par des tableaux VB est également un moyen d'améliorer la vitesse d'exécution.
Pour ta question initiale j'ai l'impression que l'événement
Click de ton bouton
cmdbexporter de ton formulaire (
cmdbexporter_Click() ) fait déjà ce genre de travail. Je ne l'ai pas testé mais tu demandes de désigner un fichier cible, tu collectes des données dans un fichier source que tu stockes dans un tableau VB et tu remplis une plage du fichier cible avec ces données.
Ça ne me semble pas loin du résultat demandé, du moins à vue de nez.
J'attends une réponse avant de continuer.
Amicalement
Alain