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

XL 2013 Problème dans Formulaire VBA qui efface formules dans mon classeur Excel

Ismagapi

XLDnaute Junior
Bonjour et merci de votre aide par avance,
J'ai créé un formulaire pour rechercher, modifier ou créer dans une base de données. J'arrive à rapatrier mes données mais lorsque je créé ou lorsque je modifie grace à un bouton de commande, la sauvegarde se fait dans ma base de données mais efface la formule de ma cellule. Résultat les valeurs remontées par la suite par mon formulaire sont erronées car la formule =SI(CL259>0;NBVAL(CP259;CZ259;DJ259;DT259;ED259;EN259);"0") se transforme en chiffre 1,2,3,4,5 et 6 en valeurs numériques.
Comment peut on faire pour empêcher l'écriture de ma textBox qui rapatrie la donnée de la cellule dans ma base de données ? Ou comment peut on inscrire dans une textBox en code vba cette formule ?

Ci joint mon code entier (je sais c'est un peu le bordel mais je débute ...)
Merci de l'attention que vous porterez à mon problème et surtout m'aider à le résoudre....
 

Pièces jointes

  • Fichier Test.xlsm
    140.1 KB · Affichages: 4

Dranreb

XLDnaute Barbatruc
Bonjour.
Les informations données par des formules devraient être affichées non dans des TextBox mais dans des Label, et il ne faudrait pas les réécrire.
Étant donné que la plage n'a pas fait l'objet d'une mise sous forme de tableau, pour une nouvelle ligne vous pourriez peut-être faire :
VB:
WS.Cells(Ligne, CByte(CTRL.Tag)).FormulaR1C1 = "=IF(RC90>0,COUNTA(RC94,RC104,RC114,RC124,RC134,RC144),""0"")"
et :
VB:
WS.Cells(Ligne, CByte(CTRL.Tag)).FormulaR1C1 = "=IF(RC90>0,RC90-RC91,"""")"
Ou mettre ces FormulaR1C1 dans le tag, derrière le numéro de colonne, après un point-virgule ou un "|" … (fonction VBA Split pour récupérer les deux parties)
 

Dranreb

XLDnaute Barbatruc
Ben là où vous affectiez les valeurs de TextBox à la propriété Value de cellules. Au lieu de faire ça affectez ces formules en style R1C1 à leur propriété FormulaR1C1.
 

Discussions similaires

Réponses
17
Affichages
664
Réponses
12
Affichages
252
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…