Erreur 1004 "la formule que vous avez tapée contient une erreur"

florian74 Messages postés 324 Statut Membre -  
florian74 Messages postés 324 Statut Membre -
Bonjour,

Lorsque je lance ma macro, j'obtiens le message suivant :


Mon code semble pourtant bon... Ci dessous, la ligne qui fait défaut (le problème est sur la formule IF) :

Range("$B$5", Range("$B$" & fin)).Select
Names.Add Name:="Section1_ExtG", RefersToR1C1:= _
"=IF('Tableau de Bord Ligne 30'!R5C3 = TRUE,Instance!" & Selection.Address(ReferenceStyle:=xlR1C1) & ",'Tableau de Bord Ligne 30'!R1C1)"


Je tiens à préciser que lorsque je lance la macro pas à pas, je n'ai aucun message d'erreur... Et tout fonctionne.
Merci d'avance.

3 réponses

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour à tous

    Pour donner un nom à ine plage de cellule

    range(""A2:C45").name= "zaza"
    1
    1. florian74 Messages postés 324 Statut Membre 24
       
      Bonjour,
      Le problème n'est pas de donner un nom... Ça concerne le RefersTo... Je souhaite y insérer une formule et ça ne fonctionne pas..
      Merci
      0
  2. ThauTheme Messages postés 1564 Statut Membre 160
     
    Bonjour Florian, bonjour le forum,

    En VBA la formule ne s'écrit pas pareil que dans l'onglet.
    • Lance l'enregistreur de macro
    • Écrit la formule dans une cellule de l'onglet
    • Arrête l'enregistreur de macro

    Dans VBE (Visual Basic Editor) regarde le résultat. Utilise-le dans ton code...

    0
  3. florian74 Messages postés 324 Statut Membre 24
     
    Bonjour ThauTheme.

    Merci pour ta réponse.
    J'avais déja essayé l'enregistreur de macro et j'obtiens ceci :

    ActiveWorkbook.Names.Add Name:="Supprimer", RefersToR1C1:= _
            "=IF('Tableau de Bord Ligne 30'!R5C3 = TRUE,Instance!R17C7,'Tableau de Bord Ligne 30'!R1C1)"
        ActiveWorkbook.Names("Supprimer").Comment = ""


    Le plus curieux c'est que j'avais déjà écris des lignes comme celles dans mon premier post dans un ancien fichier et que tout marchait correctement...

    Florian
    0