Code VBA et changement de feuille excel

Fermé
Meyfarth - 29 nov. 2007 à 14:58
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 29 nov. 2007 à 16:48
Bonjour,

Je vous explique mon problème :
J'aimerais faire une macro qui mette à jour des cellules en fonction de la semaine en cours et la semaine précédente. Concrètement, j'ai une colonne "cumul", qui a pour valeur le cumul de toutes les semaines précédentes. Cette colonne est dans chaque feuille (les feuilles étant les semaines) et se calcule en fonction du cumul de la semaine précédente et des chiffres de la semaine en cours.

Le problème étant qu'il me fait une erreur '1004' Erreur définie par l'application ou par l'objet.

Je vous colle le bout de code qui ne fonctionne pas :

Sub MaJ()
Dim Semaine As Integer
Dim SemainePrec As Integer
Dim FormuleSom As String
Dim FormuleMoy As String
Semaine = Val(InputBox("Quelle semaine? (Le numéro seulement)"))
SemainePrec = Semaine - 1
Range("A50") = "''S" & SemainePrec & "'"
FormuleSom = "=SOMME(RC[-2];" & Range("A50") & "!RC)"
FormuleMoy = "=MOYENNE(RC[-2];'S" & Range("A50") & "'!RC)"

ChangeLiens
Range("H35").FormulaR1C1 = FormuleSom

EndSub

Seule la ligne Range("H35")FormulaR1C1 = FormuleSom pose problème ...

J'aimerais qu'il mette dans la cellule en question : =SOMME(RC[-2];'S49'!RC) (le S49, comme vous l'avez compris, varie en fonction de la semaine dans laquelle on se trouve)

Des idées ?
A voir également:

2 réponses

C'est bon, j'ai trouvé le problème à forces de petites modifications :
j'ai mis des virgules à la place des points-virgules
J'ai supprimé la ligne "Range("A50") = "" ...
J'ai modifié les lignes des formules par :
FormuleSom = "=SUM(RC[-2],S'" & SemainePrec & "!RC)"
L'autre idem avec AVERAGE à la place de SUM
J'ai remplacé la ligne "Range("H35").formulaR1C1 par deux lignes :
Range("H35").Select
ActiveCell.FormulaR1C1 = FormuleSom
3
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
29 nov. 2007 à 16:48
bonjour,

Si ton problème est résolu ... alors mets le en "résolu" ... merci

;o)

Polux
1