Formules effacées

D

Didier

Guest
Bonjour le forum,
Voilà, j'ai rassemblé tous les résultats d'une formule NB.SI dans un userform
et depuis chaque fois que j'ajoute une donné la formule s'efface
Bon samedi
Merci
 
@

@+Thierry

Guest
Bonjour Didier, Bonjours les ami(e)s, bon samedi à tous

pas très détaillé ton post Didier...

Je suppose, vu le niveau que tu as, tu utilises un control qui renvoie une donnée par la propriété "LinkedCell" sur une cellule qui en fait contient une formule.... Si c'est le cas, c'est normal ce qui t'arrive.

Soit il faut faire ré-écrire la formule par VBA avec l'action sur un CommandButton par exemple soit il faut revoir un peu ce que tu essaies de faire... Hélas dans les deux cas, il nous manque vraiment trop d'info !!

Option Need to Be More Explicit !

à suivre...
@+Thierry
 
D

Didier

Guest
Bonjour @+Thierry
En effet je m'y prends de cette manière et je ne cpmprends pas pourqui
quand revoie la valeur dans l'userform il efface la formule je joint le fichier
merci
Didier
 

Pièces jointes

  • efface.xls
    23.5 KB · Affichages: 116
@

@+Thierry

Guest
re Didier

oui bon j'ai vu ton UserForm... un peu simpliste mais que veux-tu faire au juste ?
A) retourner la valeur de "B19" vers le TextBox1 (c'est fait)
B) retourner la valeur numérique du TextBox1 vers la cellule B19 (c'est fait)

c'est le serpent qui se mort la queue çà !! lol

Disons que ton problème vient du fait que tu utilises la propriété "RowSource" et je me mets à ta place avec un niveau débutant sans VBA, j'aurais fait idem. Hélas LinkedCell etc n'existe pas dans la fenetre d'un control de UserForm (contrairement à un control de feuille) D'ailleurs mes explications dans d'autres fils ne sont pas applicables dans un UserForm, mais dans des feuilles !!

Là il faut passer le stade supérieur et commencer tranquillement à programmer tes UserForm en 100% VBA (plus d'enresgistreur)...

Donc RowSource n'est pas bon ici !
Répond moi quelle orientation tu veux A ou B et je te fait une ptite démo...

...
@+Thierry
 
D

Didier

Guest
Thierry,
en fait c'était pour regouper l'effectif total matin après midi pour
vérifier s'il n'était en dessous du service minimun et avoir accès à cela d'un clic et toutes ces données se trouvent en bas de page alors que
grouper créer un plan aurait suffit .
bon samedi
 
@

@+Thierry

Guest
=> DEMO Formules écrites par UserForm

Re Didier,

Merci pour tes explication mais tu ne me réponds pas si c'est du A ou du B que tu veux... Donc du coup vite fait (en 30 minutes quand même car j'ai eu un problème voir mon code) !! j'ai fais les DEUX !!

ci-joint une mini démo expressément pour toi... J'espère que çà t'éclaireras dans la construction des UserForms avec des Controls paramétrés en VBA....

Au fait j'ai mis plein de commentaires pour essayer d'être clair pour toi Didier... Mais il y a aussi une partie dans laquelle je me pose un problème, si quelqu'un a cinq minutes pour voir si il a une idée pour un truc qui m'a obligé a être plus long dans mon code....

Bon Samedi Aprèm

@+Thierry
 

Pièces jointes

  • UserFormEcrivantFormule.zip
    12.1 KB · Affichages: 287
Dernière modification par un modérateur:
S

steplof

Guest
Re: => DEMO Formules écrites par UserForm

Salut @tous et @+Thierry

Bon j'ai pas eu le temps de comprendre tout ton code (il va me falloir l'apres-midi mais pour ta formule ça ça marcherait pas?

critere = ListBox1.Value
Formule = "=COUNTIF(B9:B17, " & critere & " )"

A tout hasard... si ç apeut te servir

Bon Aprem

Steplof (qui va essayer de compendre la suite)
 
S

steplof

Guest
Re: => DEMO Formules écrites par UserForm

Re

Ben non bien sur ça marchait pas désolé du dérangement mais tant pis je recommence...
que reproches tu à ton test 2 il me semble bien fonctionner
dim critere as string
critere = ListBox1.Value
Formule = "=COUNTIF(B8:B18, """ & critere & """ )"

ça ça marche
il me semble...


Steplof
 
@

@+Thierry

Guest
Re: => DEMO Formules écrites par UserForm

re bonjour Steplof

pour le 1
critere = ListBox1.Value
Formule = "=COUNTIF(B9:B17, " & critere & " )"
=> NON erreur 1004

pour le 2
critere = ListBox1.Value
Formule = "=COUNTIF(B8:B18, """ & critere & """ )"
=> OUIIIIIIIIIIIIIIIIIIIIIIIIIII bravo !!!

à force de trafiquer moi j'avais gardé bêtement
'critere = ListBox1.Value
'Formule = "=COUNTIF(B9:B17, & """ & critere & """)"

et je tournais en rond !!! lol
tu vois comme quoi il suffit d'un tout petit truc !!! un simple & de trop ! et crac la cata...... mais faut toujours persévérer !!! merci STeplof

Donc SAV pour ceux / celles qui voudraient utiliser ce code !!! il marche dans l'état, mais c'est plus propre et plus rapide comme suit

Remplacer la macro CALCUL par celle-ci

Private Sub CALCUL()
'en collaboration Thierry / Steplof
Dim Formule As String
Dim critere As String
critere = ListBox1.Value
Formule = "=COUNTIF(B8:B18, """ & critere & """)"
Worksheets("feuil1").Range("b19").Formula = Formule
TextBox1.Value = Sheets("feuil1").Range("b19").Value
Label1.Caption = Sheets("feuil1").Range("b19").Value
End Sub

:) l'union fait la force !!! (vive la Belgique dont c'est la devise nationale !!)

@+Thierry
 
S

steplof

Guest
Re les accros de l'écran Excellisé

Merci pour l'honneur que tu me fais de m'incorporer mais
T'aurais du mettre

' en collaboration Thierry & steplof

ce qui aurait eu le mérite de souligner TOUTE l'importance de ma contribution....

ça me rappelle mon premier prog en TurboPascal( on ne rit pas c'était y a que 13 ans) que j'avais passé une après-midi à essayer de compiler...
Juste parce que j'écrivais Endif au lieu de End If...

Houu là je me fais vieux moi!!!! ;o))))))))))


Bonne fin de journée

Steplof.

PS: Vive le VBE
 

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 299
Membres
103 172
dernier inscrit
Aurelyan