Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1758 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  inscrire une formule dans une cellule

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

inscrire une formule dans une cellule

n°2170800
vallou94
Posté le 11-01-2013 à 23:10:12  profilanswer
 

Bonjour,
Je chercher à inscrire une formule dans une cellule. Voici le code tapé :
Sheets("Graphiques" ).Select
    Range("B2" ).Select
    ActiveCell.FormulaLocal = "=NB.SI('Recap données'!H:H,Graphiques!A2)"
    Range("B2" ).Select
    Selection.AutoFill Destination:=Range("B2:B7" ), Type:=xlFillDefault
    Range("B2:B7" ).Select
 
J'ai une erreur 1004 et je ne comprends pas pourquoi.
 
Pourriez-vous m'aider s'il vous plait ?
 
Cordialement

mood
Publicité
Posté le 11-01-2013 à 23:10:12  profilanswer
 

n°2170825
Marc L
Posté le 12-01-2013 à 11:52:02  profilanswer
 

 
             Bonjour !      Merci de préciser quelle ligne déclenche l'erreur ‼
 
             Dans ce cas, c'est clair que cela vient de la .FormulaLocal …
 
             Pour la compréhension, prendre le problème à l'envers !
 
             Entrer manuellement dans une cellule la formule puis vérifier qu'elle fonctionne.
             Sélectionner la cellule (elle doit donc être active).
 
             Ouvrir l'éditeur VBA, dans la fenêtre Exécution (l'ouvrir si besoin via le menu Affichage)
             entrer ?  activecell.formulalocal et valider.
 
             Et là j'attends ton retour !
 
 
             Astuces :
 
         ► Eviter les .Activate & .Select autant que possible car cela alourdit le code et rend son exécution plus lente ‼
 
             Exemple :

Code :
  1.  Range("B2" ).AutoFill Range("B2:B7" )

             C'est plus rentable de directement manipuler les objets …
 
         ► Dans le cas d'entreprise internationale (Excel en différentes langues),
             mieux vaut directement travailler avec .Formula au lieu de .FormulaLocal.
             Là le code fonctionnera indépendamment de la langue locale d'Excel …
 
             En utilisant la même procédure, entrer manuellement la formule dans une cellule, la laisser active
             puis voir dans la fenêtre Exécution de l'éditeur VBA sa formule interne via ?  .activecell.formula


Message édité par Marc L le 12-01-2013 à 15:23:13
n°2171126
vallou94
Posté le 14-01-2013 à 16:21:31  profilanswer
 

Bonjour Marc L,
Tout d'abord merci pour votre réponse.
Effectivement l'erreur 1004 provient de .FormulaLocal
Je suis désolé mais je ne comprends toujours pas l'erreur. Je cherche comme énoncé ci-dessus mais n'étant que débutant en vba je ne saisis pas d'où provient mon erreur.
Pourriez-vous m'aider un peu plus ?

n°2171275
vallou94
Posté le 15-01-2013 à 11:57:25  profilanswer
 

J'ai trouvé comment y remédier.
Voici comment j'ai procédé :
Sheets("Graphiques" ).Select
Range("B2" ).Select
    ActiveCell.FormulaR1C1 = "=COUNTIF('Recap données'!C[6],Graphiques!RC[-1])"
    Range("B2" ).Select
    Selection.AutoFill Destination:=Range("B2:B7" ), Type:=xlFillDefault
    Range("B2:B7" ).Select
    Range("C2" ).Select
 
Encore merci pour l'aide apportée.

n°2171576
Marc L
Posté le 16-01-2013 à 21:27:59  profilanswer
 

 
               Bien,  mais il y avait une méthodologie pour t'en sortir dans ma réponse …
 
               Au passage, tes 2 dernières lignes ne servent à rien ‼
 

n°2171578
vallou94
Posté le 16-01-2013 à 21:42:18  profilanswer
 

OK merci.
JE suis désolé mais je ne comprends pas toutes les subtilités de vba car je commence seulement à m'y mettre.
Mais soit sur que tes infos me serviront. Je m'y pencherais dès que le pourrais.
Encore merci pour cette méthodologie.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  inscrire une formule dans une cellule

 

Sujets relatifs
Référence à une cellule dans un fichier externeCellule fusionnée et xlEdgeRight
Comment intégrer une formule sur une page HTML ??[VBA] Créer une liste depuis une cellule
Problème formule à plusieurs conditions[résolu] pbl de formule avec INDEX & EQUIV & GAUCHE
Formule déroulement type posteraide formule excel
récupérer la valeur d'une cellule dans plusieurs classeursCréation d'un nouveau tableau sans cellule vide
Plus de sujets relatifs à : inscrire une formule dans une cellule


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR