Se connecter avec
S'enregistrer | Connectez-vous

[VBA] Insérer une formule dans une macro

Dernière réponse : dans Programmation

Salut tout le monde!

Je me bat avec Excel etj'essaie d'entrer une formule dans mon code VBA, j'ai copié la formule de la feuille et je l'ai collé dans la macro, j'ai changé les références absolues en références relatives et j'ai changé les simples guillemets en doubles guillemets et ça ne fontionne toujours pas, est-ce que quelqu'un voit l'erreur:

  1. ActiveWorkbook.Sheets("Données").Range("R2").FormulaR1C1 = "=SI(OU(ESTNA(RECHERCHEV(RC[-11];Catégories!A$2:B$65536;2;FAUX));ESTERREUR(RECHERCHEV(RC[-11];Catégories!A$2:B$65536;2;FAUX));RECHERCHEV(RC[-11];Catégories!A$2:B$65536;2;FAUX)=0);"""";RECHERCHEV(RC[-11];Catégories!A$2:B$65536;2;FAUX))"


Le formule comme je vous l'ai dit fonctionne dans la feuille et fournit le résultat attendu.
Autre chose: même si la formule fonctionne il m'a été impossible d'enregistrer une macro avec, historie de voir comment elle serait enregistrée, je reçois le message "Impossible d'enregistrer"

J'ai changé les formules en anglais pour que ça donne ceci (j'ai remplacé entre autres les virgules par des points-virgules) sans succés la macro bloque à la même ligne:

  1. ActiveWorkbook.Sheets("Données").Range("R2").FormulaR1C1 = "=IF(OR(ISNA(VLOOKUP(RC[-11],Catégories!A$2:B$65536,2,FALSE)),ISERROR(VLOOKUP(RC[-11],Catégories!A$2:B$65536,2,FALSE)),VLOOKUP(RC[-11],Catégories!A$2:B$65536,2,FALSE)=0),"""",VLOOKUP(RC[-11],Catégories!A$2:B$65536,2,FALSE))"

Autres pages sur : vba inserer formule macro

Lassé par la pub ? Créez un compte
Lassé par la pub ? Créez un compte