Utiliser deux plages nommées

Le
Apitos
Bonsoir tous,

Dans un classeur, j'ai dfini deux plages nomme.

bEntresS, dans l'onglet "B"

mEntreS, dans l'onglet "M"

Pour utiliser, l'une ou l'autre plage, j'ai cod :

'-
With ActiveSheet
x = .Name
.Range("E4").Formula = "=SUMPRODUCT((sRfrence=$A4)*(sEtat=
=""x"")*(sMouvement=""Sortie"")*(sQuantit))"
.Range("F4").AutoFill Destination:=[x & "EntreS"], Type:=xlFillD=
efault
End With
'--

Mais voila, a me dclenche une erreur :

Erreur d'excution '1004':

La mthode AutoFill de la classe a chou.

Sur la ligne suivante :

.Range("F4").AutoFill Destination:=[x & "EntreS"], Type:=xlFillDefau=
lt

Comment rsoudre cette difficult ?

Merci.
Vos réponses Page 2 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacky
Le #24886772
Ton classeur modifié
http://cjoint.com/?BJtxhd0seqY
--
Salutations
JJ
Jacky
Le #24886762
Celui-ci sera plus ressemblant
;o))
http://cjoint.com/?BJtxs7UHTSS
--
Salutations
JJ


"Jacky"
Ok
Oublie le message précédant
J'ai étudié ton code d'un peu plus près
Remplace ceci
.Range("D4").Formula = "=SUMPRODUCT((sRéférence=$A4)*(sEtat=""" & Nom &
""")*(sMouvement=""Entrée"")*(sQuantité))"
Par
.Range(x & "EntréeS").Formula = "=SUMPRODUCT((sRéférence=$A4)*(sEtat=""" & Nom &
""")*(sMouvement=""Entrée"")*(sQuantité))"

Idem pour les autres...en dessous

--
Salutations
JJ


"Apitos"
Re,

Les plages nommées vont bien de la ligne 4 jusqu'à la ligne 6.

Mais pourquoi les formules ne sont pas copiées jusqu'à la dernière ligne, ça c'est la question ?

En PJ un exemple complet :

http://cjoint.com/?BJtu5e5wCXN

Apitos
Le #24886752
Génial.

C'est un code plus que reduit !

Ca marche. Merci bien Jacky.
Apitos
Le #24886742
Ah non !

Je m'excuse, mais ça ne marche pas pour le cas de la formule matricielle en colonne H.

La référence $A4 se répète pour toutes les cellules en colonne H.
Jacky
Le #24886732
En effet pas pour les matricielles
remplace le code pour la colonne H
par
'-- Calcul de la date du dernier mouvement
.Range(x & "DateS")(1).FormulaArray = "=MAX((sRéférence=$A4)*(sEtat=""" & Nom & """)*sDate)"
.Range(x & "DateS")(1).AutoFill Range(x & "DateS")
.Range(x & "DateS").NumberFormat = "dd/mm/yyyy hh:mm"

--
Salutations
JJ


"Apitos"
Ah non !

Je m'excuse, mais ça ne marche pas pour le cas de la formule matricielle en colonne H.

La référence $A4 se répète pour toutes les cellules en colonne H.
Jacky
Le #24886722
En effaçant auparavant manuellement les formules matricielles dans la colonne H

--
Salutations
JJ


"Jacky"
En effet pas pour les matricielles
remplace le code pour la colonne H
par
'-- Calcul de la date du dernier mouvement
.Range(x & "DateS")(1).FormulaArray = "=MAX((sRéférence=$A4)*(sEtat=""" & Nom & """)*sDate)"
.Range(x & "DateS")(1).AutoFill Range(x & "DateS")
.Range(x & "DateS").NumberFormat = "dd/mm/yyyy hh:mm"

--
Salutations
JJ


"Apitos"
Ah non !

Je m'excuse, mais ça ne marche pas pour le cas de la formule matricielle en colonne H.

La référence $A4 se répète pour toutes les cellules en colonne H.

Apitos
Le #24886642
Ca marche maintenant.

Merci Jackt :)
Apitos
Publicité
Poster une réponse
Anonyme