Talel_01
Nouveau membre
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:
[cpp]
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))"
[/cpp]
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:
[cpp]
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))"[/cpp]
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:
[cpp]
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))"
[/cpp]
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:
[cpp]
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))"[/cpp]