Remplissage de cellule: VBA

Fermé
guadoc Messages postés 70 Date d'inscription mercredi 26 mai 2010 Statut Membre Dernière intervention 21 octobre 2011 - 9 mai 2011 à 16:26
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 - 9 mai 2011 à 22:03
Bonjour,
J'ai un problème en vba et étant débutant cela fait un moment que je cherche une solution sans en trouver. Donc si quelqu'un peut me donner une piste ce serait super.
Mon problème est le suivant,
je veux remplir une cellule avec la formule:

=INDIRECT(B & COLONNE(C11)+36)

J'utilise les commandes:

Range("C1").Select
instr = "=INDIRECT(""B"" & COLONNE(C11)+" & LTrim(str(Nb_devises + Nb_col)) & ")"
ActiveCell.FormulaR1C1 = instr

avec LTrim(str(Nb_devises + Nb_col)) qui donne bien 36.

A l'execution j'obtient :
=INDIRECT(B & COLONNE($K$K)+36)

Les deux K viennent surement du 11 mais je ne comprend as du tout pq.
Donc si qlqun peut m'expliquer pq ma formule ne se rempli pas correctement et a une piste pour me faire avancer cela me rendrait super service.

Merci d'avance pour vos contributions.




2 réponses

guadoc Messages postés 70 Date d'inscription mercredi 26 mai 2010 Statut Membre Dernière intervention 21 octobre 2011 5
9 mai 2011 à 16:33
en fait la formule exacte que je veux obtenir c :

=INDIRECT("B "& COLONNE(C11)+36)

avec les guillemet autour du B.
0
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 948
Modifié par Mytå le 9/05/2011 à 22:06
Salut le forum

Deux possibilités :
.FormulaR1C1 = "=INDIRECT(""B ""& COLUMN(R[10]C)+36)"
ou
.Formula = "=INDIRECT(""B ""& COLUMN(C10)+36)"
Mytå
0