Bonjour à tous,
Voici mon problème:
J'ai créé un userform dans lequel je renseigne un certain nombre de données numériques décimales dans des textbox
A la fermeture de l'userform, chacune des valeurs renseignée dans chaque textbox est copiée dans un tableau sur une feuille excel "cachée".
Sur mon UF, je précise à l'utilisateur d'utiliser le séparateur décimal "." et non ",". Sinon les données copiées dans le tableau sont inutilisables car non reconnues comme un nombre. Je pourrai forcer l'utilisation du "." avec
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii = 44 Then KeyAscii = 46
End Sub
mais cela m'obligerait à copier le code pour chaque textbox et il y en a beacoup... de toute façon le problème ne vient pas de là, j'y viens.
A chaque ouverture de l'userform en question, si des données ont déjà été saisies précédemment, elles sont remontées depuis le tableau. Je fais bêtement la manip' inverse qu'à sa fermeture.
C'est là que ça bug, même si dans mon tableau j'ai des données avec des "." comme séparateur, lorsque mon UF les charge dans les textbox, ce sont des "," qui sont utilisées... et du coup à partir de la seconde fermeture de l'UF ce sont des "," qui sont copiées dans mon tableau et mes données ne sont plus exploitables.
J'ai tenté plusieurs solutions:
- sélectionner toutes les textbox de l'UF et remplacer "," par "." à la fermeture mais je n'arrive pas à trouver de code qui marche
- copier quand même des "," dans mon tableau excel et après copie, effectuer un rechercher/remplacer "," par "." dans toutes les cellules concernées. Ici le problème est que sans que je sache pourquoi cela ne fonctionne qu'avec un certain nombre de cellules et pas toutes...
J'ai passé pas mal de temps à chercher sur les forums mais je ne trouve pas de réponses satisfaisantes...
Merci de votre aide