Bonjour
Il faut créer un nouveau sujet plutôt que de poser ta question directement sur le sujet de quelqu'un d'autre.
Pour ton problème essai de sélectionner tes cellules, de faire un clique droit... Format de Cellule...Alignement... Et choisir "Justifier"pour l'alignement horizontal.
Si cette réponse ne résout pas le problème, merci de ne pas répondre ici et de créer un nouveau sujet dans le forum Macros et VBA Excel.
@Qvn83 : Désolé pour l'incursion...
Pour ton problème as tu essayé de spécifier la propriété à utiliser sur le membre de droite?
Plage1(i).FormulaLocal = Plage2(i).FormulaLocal
VBA est un code verbeux, si on ne lui précise pas exactement ce qu'on veut, il utilise des propriétés par défaut (au lieu de carrément planter). De ce fait, on peut penser que le code fait "ce qu'on veut" mais en fait si on ne spécifie pas, dans le cas d'un range, c'est la propriété Value qui est utilisée par défaut.
En faite, je veux pouvoir modifier une valeur en cellule puis afficher cette valeur à partir d'une fonction recherchev à partir d'un tableau où j'ai enregistrer la nouvelle valeur saisie par l'utilisation.
Uff.
Sur le début, je crois comprendre que tu as une cellule qui te retourne le nom d'une cellule et que tu veux modifier la cellule dont l'adresse est inscrite dans la cellule contenant la formule... C'est ça?
Dans ce cas il faut t'orienter sur un code de ce type
Feuil1.range(Feuil1..range("A1").value).Value = "MaValeur"
Ici on travaille sur la feuil1 (codeName des feuilles présent dans les propriété F4 dans l'environnement VBA en sélectionnant la feuille dans l'arborescence du fichier)

La cellule A1 contient la formule qui retourne une adresse de cellule. La cellule ciblé par cette adresse est modifiée pour inscrire à l'intérieur la chaine "MaValeur"
Si tu veux faire une rechecheV (regarde quand même du coté de Index + Equiv, RecherchV c'est pas top), tu peux utiliser
Feuil1.range(Feuil1..range("A1").value).Value
pour obtenir la valeur de la cellule dont l'adresse est précisée en A1
Il est ensuite possible d'incorporer cette valeur dans la formule que tu veux mettre en place dans une autre cellule
Plage2(3) = "=RECHERCHEV(" & Feuil1.range(Feuil1..range("A1").value).Value & ";Z12:Z15;2;FAUX)"
Si ça n'est pas ça, le mieux serait de faire un fichier démo.
++
Qwaz
Partager