Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Soucis avec Copy Sheets

12 réponses
Avatar
PLG
Bonjour (ou re pour certains)
J'ai un soucis avec ce code.

[C3].Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
[O4:P4].Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
[D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
[D5:N5].Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
[D6:N6].Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)

Les données D4:N4, D5:N5, et D6:N6 vont bien se copier respectivement sur
les feuilles 1, 2 et 3.
Mais il n'en va pas de même pour la cellule C3 qui ne se copie (cette garce)
que sur la feuille 1...!!!!

Pourquoi, porqué, perqué, why...?
(Je le savais aussi en chinois... mais j'ai oublié !!!)

Merci d'éclairer ma lanterne !
Pat

10 réponses

1 2
Avatar
michdenis
Tu devrais utiliser ce type de syntaxe :

With Worksheets("NomDeTaFeuille")
.range("C3").Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
.range("O4:P4").Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
.range("D4:N4").Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
.range("C3").Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
.range("D5:N5").Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
.range("C3").Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
.range("D6:N6").Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
End With

Je suis partisan de "Range" plutôt que des [ ]
et le fait d'utiliser la référence With ... évite souvent des méprises
quant à la plage visée par la procédure.


"PLG" a écrit dans le message de groupe de discussion :

Bonjour (ou re pour certains)
J'ai un soucis avec ce code.

[C3].Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
[O4:P4].Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
[D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
[D5:N5].Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
[D6:N6].Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)

Les données D4:N4, D5:N5, et D6:N6 vont bien se copier respectivement sur
les feuilles 1, 2 et 3.
Mais il n'en va pas de même pour la cellule C3 qui ne se copie (cette garce)
que sur la feuille 1...!!!!

Pourquoi, porqué, perqué, why...?
(Je le savais aussi en chinois... mais j'ai oublié !!!)

Merci d'éclairer ma lanterne !
Pat
Avatar
PLG
Bonjour "michdenis" et merci de ta réponse.

Ce n'est pas la première fois que tu me dépannes, d'ailleurs !
Là par contre, le problème demeure, malgré le fait que j'ai intégré ton code
dans ma macro.
La cellule C3 ne se copie que sur la feuille "1"
J'avoue ne pas comprendre...!

Vois tu où réside le problème ?
En fait cette foutue cellule C3, je dois la copier sur 45 feuilles "1" à
"45"..!
Je voulais lier les cel des 44 autres feuilles avec celles de la feuille
"1", mais mes extractions avec Index(Equiv()) me renvoyait un message
d'erreur.
certainement le fait de trouver une liaison et non une valeur.
Je voulais donc le faire par la macro.... mais, cela ne fonctionne pas !!!

Please..... help !!!
( ça me rappelle un film ça....!!! )



"michdenis" a écrit :

Tu devrais utiliser ce type de syntaxe :

With Worksheets("NomDeTaFeuille")
.range("C3").Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
.range("O4:P4").Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
.range("D4:N4").Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
.range("C3").Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
.range("D5:N5").Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
.range("C3").Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
.range("D6:N6").Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
End With

Je suis partisan de "Range" plutôt que des [ ]
et le fait d'utiliser la référence With ... évite souvent des méprises
quant à la plage visée par la procédure.


"PLG" a écrit dans le message de groupe de discussion :

Bonjour (ou re pour certains)
J'ai un soucis avec ce code.

[C3].Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
[O4:P4].Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
[D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
[D5:N5].Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
[D6:N6].Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)

Les données D4:N4, D5:N5, et D6:N6 vont bien se copier respectivement sur
les feuilles 1, 2 et 3.
Mais il n'en va pas de même pour la cellule C3 qui ne se copie (cette garce)
que sur la feuille 1...!!!!

Pourquoi, porqué, perqué, why...?
(Je le savais aussi en chinois... mais j'ai oublié !!!)

Merci d'éclairer ma lanterne !
Pat



Avatar
michdenis
Est-ce que les chiffres "1" ... "45" sont le nom des onglets
de tes feuilles ou tu fais référence à l'index des feuilles(position de
la feuille par rapport à une autre)

Est-tu certains que dans le nom des onglets, tu n'as pas insérer
un espace (non visible à l'oeil) ?

Sinon, il n'y a pas de raison pourquoi cela ne fonctionne pas !


"PLG" a écrit dans le message de groupe de discussion :

Bonjour "michdenis" et merci de ta réponse.

Ce n'est pas la première fois que tu me dépannes, d'ailleurs !
Là par contre, le problème demeure, malgré le fait que j'ai intégré ton code
dans ma macro.
La cellule C3 ne se copie que sur la feuille "1"
J'avoue ne pas comprendre...!

Vois tu où réside le problème ?
En fait cette foutue cellule C3, je dois la copier sur 45 feuilles "1" à
"45"..!
Je voulais lier les cel des 44 autres feuilles avec celles de la feuille
"1", mais mes extractions avec Index(Equiv()) me renvoyait un message
d'erreur.
certainement le fait de trouver une liaison et non une valeur.
Je voulais donc le faire par la macro.... mais, cela ne fonctionne pas !!!

Please..... help !!!
( ça me rappelle un film ça....!!! )



"michdenis" a écrit :

Tu devrais utiliser ce type de syntaxe :

With Worksheets("NomDeTaFeuille")
.range("C3").Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
.range("O4:P4").Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
.range("D4:N4").Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
.range("C3").Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
.range("D5:N5").Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
.range("C3").Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
.range("D6:N6").Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
End With

Je suis partisan de "Range" plutôt que des [ ]
et le fait d'utiliser la référence With ... évite souvent des méprises
quant à la plage visée par la procédure.


"PLG" a écrit dans le message de groupe de discussion :

Bonjour (ou re pour certains)
J'ai un soucis avec ce code.

[C3].Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
[O4:P4].Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
[D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
[D5:N5].Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
[D6:N6].Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)

Les données D4:N4, D5:N5, et D6:N6 vont bien se copier respectivement sur
les feuilles 1, 2 et 3.
Mais il n'en va pas de même pour la cellule C3 qui ne se copie (cette garce)
que sur la feuille 1...!!!!

Pourquoi, porqué, perqué, why...?
(Je le savais aussi en chinois... mais j'ai oublié !!!)

Merci d'éclairer ma lanterne !
Pat



Avatar
PLG
Oui les chiffres 1 à 45 sonr les noms de mes onglets.
J'ai vérifié, il n'y a pas d'espace.
J'ai trouvé ce truc :

Sheets("1").Select
Range("A4:A255").Select
Selection.Copy
Sheets(Array("2", "3", "4", "5")).Select
Sheets("2").Activate
Range("A4").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:úlse

Bon, cela fonctionne, mais est ce que le Sheet(Array() va supporter "2"
jusqu'à "45"...?
Puis c'est un peu longuet...!
C'est sur que je pige pas pourquoi cela ne fonctionne pas....!


"michdenis" a écrit :

Est-ce que les chiffres "1" ... "45" sont le nom des onglets
de tes feuilles ou tu fais référence à l'index des feuilles(position de
la feuille par rapport à une autre)

Est-tu certains que dans le nom des onglets, tu n'as pas insérer
un espace (non visible à l'oeil) ?

Sinon, il n'y a pas de raison pourquoi cela ne fonctionne pas !


"PLG" a écrit dans le message de groupe de discussion :

Bonjour "michdenis" et merci de ta réponse.

Ce n'est pas la première fois que tu me dépannes, d'ailleurs !
Là par contre, le problème demeure, malgré le fait que j'ai intégré ton code
dans ma macro.
La cellule C3 ne se copie que sur la feuille "1"
J'avoue ne pas comprendre...!

Vois tu où réside le problème ?
En fait cette foutue cellule C3, je dois la copier sur 45 feuilles "1" à
"45"..!
Je voulais lier les cel des 44 autres feuilles avec celles de la feuille
"1", mais mes extractions avec Index(Equiv()) me renvoyait un message
d'erreur.
certainement le fait de trouver une liaison et non une valeur.
Je voulais donc le faire par la macro.... mais, cela ne fonctionne pas !!!

Please..... help !!!
( ça me rappelle un film ça....!!! )



"michdenis" a écrit :

> Tu devrais utiliser ce type de syntaxe :
>
> With Worksheets("NomDeTaFeuille")
> .range("C3").Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
> .range("O4:P4").Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
> .range("D4:N4").Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
> .range("C3").Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
> .range("D5:N5").Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
> .range("C3").Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
> .range("D6:N6").Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
> End With
>
> Je suis partisan de "Range" plutôt que des [ ]
> et le fait d'utiliser la référence With ... évite souvent des méprises
> quant à la plage visée par la procédure.
>
>
> "PLG" a écrit dans le message de groupe de discussion :
>
> Bonjour (ou re pour certains)
> J'ai un soucis avec ce code.
>
> [C3].Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
> [O4:P4].Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
> [D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
> [C3].Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
> [D5:N5].Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
> [C3].Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
> [D6:N6].Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
>
> Les données D4:N4, D5:N5, et D6:N6 vont bien se copier respectivement sur
> les feuilles 1, 2 et 3.
> Mais il n'en va pas de même pour la cellule C3 qui ne se copie (cette garce)
> que sur la feuille 1...!!!!
>
> Pourquoi, porqué, perqué, why...?
> (Je le savais aussi en chinois... mais j'ai oublié !!!)
>
> Merci d'éclairer ma lanterne !
> Pat
>


Avatar
Philippe.R
Bonsoir,
Warum demandais tu ?
En fait je n'en sait rien car ton code fonctionne bien chez moi lorsqu'il
est lancé avec pour feuille active celle qui contient les données à
ventiler.
2 pistes quand même : - assures toi que la feuille active ne change pas
en cours d'exécution
- assures toi que la dernière ligne de
la colonne A des feuilles incriminées est bien celle
que tu crois
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"PLG" a écrit dans le message de
news:
Bonjour "michdenis" et merci de ta réponse.

Ce n'est pas la première fois que tu me dépannes, d'ailleurs !
Là par contre, le problème demeure, malgré le fait que j'ai intégré ton
code
dans ma macro.
La cellule C3 ne se copie que sur la feuille "1"
J'avoue ne pas comprendre...!

Vois tu où réside le problème ?
En fait cette foutue cellule C3, je dois la copier sur 45 feuilles "1" à
"45"..!
Je voulais lier les cel des 44 autres feuilles avec celles de la feuille
"1", mais mes extractions avec Index(Equiv()) me renvoyait un message
d'erreur.
certainement le fait de trouver une liaison et non une valeur.
Je voulais donc le faire par la macro.... mais, cela ne fonctionne pas !!!

Please..... help !!!
( ça me rappelle un film ça....!!! )



"michdenis" a écrit :

Tu devrais utiliser ce type de syntaxe :

With Worksheets("NomDeTaFeuille")
.range("C3").Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
.range("O4:P4").Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
.range("D4:N4").Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
.range("C3").Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
.range("D5:N5").Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
.range("C3").Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
.range("D6:N6").Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
End With

Je suis partisan de "Range" plutôt que des [ ]
et le fait d'utiliser la référence With ... évite souvent des méprises
quant à la plage visée par la procédure.


"PLG" a écrit dans le message de groupe
de discussion :

Bonjour (ou re pour certains)
J'ai un soucis avec ce code.

[C3].Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
[O4:P4].Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
[D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
[D5:N5].Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
[C3].Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
[D6:N6].Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)

Les données D4:N4, D5:N5, et D6:N6 vont bien se copier respectivement sur
les feuilles 1, 2 et 3.
Mais il n'en va pas de même pour la cellule C3 qui ne se copie (cette
garce)
que sur la feuille 1...!!!!

Pourquoi, porqué, perqué, why...?
(Je le savais aussi en chinois... mais j'ai oublié !!!)

Merci d'éclairer ma lanterne !
Pat





Avatar
PLG
Bonjour Philippe
Gentil à toi de t'être penché sur le malade....!
En fait je vois ce que tu veux dire.
Mais si tu regardes mon code, les données de la feuille de saisie sont bien
copiées sur toutes les autres feuilles.... donc pourquoi pas cette foutue
C3...!?
Quant à ta piste n°2... j'avoue que...!?
La commande dans le code est bien d'aller se positionner sur la dernière
cellule vide de la colonne A... non...!?
Maintenant si tu me dis que cela fonctionne bien chez toi, il se peut que ma
version office 2000 ait un bug...!
Je la testerai à ce moment là au bureau où j'ai la version 2003.

Merci encore à toi


"Philippe.R" a écrit :

Bonsoir,
Warum demandais tu ?
En fait je n'en sait rien car ton code fonctionne bien chez moi lorsqu'il
est lancé avec pour feuille active celle qui contient les données à
ventiler.
2 pistes quand même : - assures toi que la feuille active ne change pas
en cours d'exécution
- assures toi que la dernière ligne de
la colonne A des feuilles incriminées est bien celle
que tu crois
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"PLG" a écrit dans le message de
news:
> Bonjour "michdenis" et merci de ta réponse.
>
> Ce n'est pas la première fois que tu me dépannes, d'ailleurs !
> Là par contre, le problème demeure, malgré le fait que j'ai intégré ton
> code
> dans ma macro.
> La cellule C3 ne se copie que sur la feuille "1"
> J'avoue ne pas comprendre...!
>
> Vois tu où réside le problème ?
> En fait cette foutue cellule C3, je dois la copier sur 45 feuilles "1" à
> "45"..!
> Je voulais lier les cel des 44 autres feuilles avec celles de la feuille
> "1", mais mes extractions avec Index(Equiv()) me renvoyait un message
> d'erreur.
> certainement le fait de trouver une liaison et non une valeur.
> Je voulais donc le faire par la macro.... mais, cela ne fonctionne pas !!!
>
> Please..... help !!!
> ( ça me rappelle un film ça....!!! )
>
>
>
> "michdenis" a écrit :
>
>> Tu devrais utiliser ce type de syntaxe :
>>
>> With Worksheets("NomDeTaFeuille")
>> .range("C3").Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
>> .range("O4:P4").Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
>> .range("D4:N4").Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
>> .range("C3").Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
>> .range("D5:N5").Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
>> .range("C3").Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
>> .range("D6:N6").Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
>> End With
>>
>> Je suis partisan de "Range" plutôt que des [ ]
>> et le fait d'utiliser la référence With ... évite souvent des méprises
>> quant à la plage visée par la procédure.
>>
>>
>> "PLG" a écrit dans le message de groupe
>> de discussion :
>>
>> Bonjour (ou re pour certains)
>> J'ai un soucis avec ce code.
>>
>> [C3].Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
>> [O4:P4].Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
>> [D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
>> [C3].Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
>> [D5:N5].Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
>> [C3].Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
>> [D6:N6].Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
>>
>> Les données D4:N4, D5:N5, et D6:N6 vont bien se copier respectivement sur
>> les feuilles 1, 2 et 3.
>> Mais il n'en va pas de même pour la cellule C3 qui ne se copie (cette
>> garce)
>> que sur la feuille 1...!!!!
>>
>> Pourquoi, porqué, perqué, why...?
>> (Je le savais aussi en chinois... mais j'ai oublié !!!)
>>
>> Merci d'éclairer ma lanterne !
>> Pat
>>




Avatar
michdenis
Une dernière tentative :

As-tu vérifié, as-tu un format de cellule particulier qui
t'empêcherais de voir le contenu de la cellule qui vient
d'être copié ?

Si cela fonctionne pas, je demanderais un remboursement
à Microsoft ;-))

ce code devrait fonctionner peu importe le module où le classseur
où il est situé.
With Worksheets("NomDeTaFeuille")
.Range("C3").Copy Worksheets("1").Range("A65000").End(xlUp).Offset(1, 0)
.Range("O4:P4").Copy Worksheets("1").Range("Z65000").End(xlUp).Offset(1, 0)
.Range("D4:N4").Copy Worksheets("1").Range("D65000").End(xlUp).Offset(1, 0)
.Range("C3").Copy Worksheets("2").Range("A65000").End(xlUp).Offset(1, 0)
.Range("D5:N5").Copy Worksheets("2").Range("D65000").End(xlUp).Offset(1, 0)
.Range("C3").Copy Worksheets("3").Range("A65000").End(xlUp).Offset(1, 0)
.Range("D6:N6").Copy Worksheets("3").Range("D65000").End(xlUp).Offset(1, 0)
End With
Avatar
PLG
N'empèche.... que je reste sur ma faim....!

"Philippe.R" a écrit :

Bonsoir,
Warum demandais tu ?
En fait je n'en sait rien car ton code fonctionne bien chez moi lorsqu'il
est lancé avec pour feuille active celle qui contient les données à
ventiler.
2 pistes quand même : - assures toi que la feuille active ne change pas
en cours d'exécution
- assures toi que la dernière ligne de
la colonne A des feuilles incriminées est bien celle
que tu crois
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"PLG" a écrit dans le message de
news:
> Bonjour "michdenis" et merci de ta réponse.
>
> Ce n'est pas la première fois que tu me dépannes, d'ailleurs !
> Là par contre, le problème demeure, malgré le fait que j'ai intégré ton
> code
> dans ma macro.
> La cellule C3 ne se copie que sur la feuille "1"
> J'avoue ne pas comprendre...!
>
> Vois tu où réside le problème ?
> En fait cette foutue cellule C3, je dois la copier sur 45 feuilles "1" à
> "45"..!
> Je voulais lier les cel des 44 autres feuilles avec celles de la feuille
> "1", mais mes extractions avec Index(Equiv()) me renvoyait un message
> d'erreur.
> certainement le fait de trouver une liaison et non une valeur.
> Je voulais donc le faire par la macro.... mais, cela ne fonctionne pas !!!
>
> Please..... help !!!
> ( ça me rappelle un film ça....!!! )
>
>
>
> "michdenis" a écrit :
>
>> Tu devrais utiliser ce type de syntaxe :
>>
>> With Worksheets("NomDeTaFeuille")
>> .range("C3").Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
>> .range("O4:P4").Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
>> .range("D4:N4").Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
>> .range("C3").Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
>> .range("D5:N5").Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
>> .range("C3").Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
>> .range("D6:N6").Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
>> End With
>>
>> Je suis partisan de "Range" plutôt que des [ ]
>> et le fait d'utiliser la référence With ... évite souvent des méprises
>> quant à la plage visée par la procédure.
>>
>>
>> "PLG" a écrit dans le message de groupe
>> de discussion :
>>
>> Bonjour (ou re pour certains)
>> J'ai un soucis avec ce code.
>>
>> [C3].Copy Sheets("1").[A65000].End(xlUp).Offset(1, 0)
>> [O4:P4].Copy Sheets("1").[Z65000].End(xlUp).Offset(1, 0)
>> [D4:N4].Copy Sheets("1").[D65000].End(xlUp).Offset(1, 0)
>> [C3].Copy Sheets("2").[A65000].End(xlUp).Offset(1, 0)
>> [D5:N5].Copy Sheets("2").[D65000].End(xlUp).Offset(1, 0)
>> [C3].Copy Sheets("3").[A65000].End(xlUp).Offset(1, 0)
>> [D6:N6].Copy Sheets("3").[D65000].End(xlUp).Offset(1, 0)
>>
>> Les données D4:N4, D5:N5, et D6:N6 vont bien se copier respectivement sur
>> les feuilles 1, 2 et 3.
>> Mais il n'en va pas de même pour la cellule C3 qui ne se copie (cette
>> garce)
>> que sur la feuille 1...!!!!
>>
>> Pourquoi, porqué, perqué, why...?
>> (Je le savais aussi en chinois... mais j'ai oublié !!!)
>>
>> Merci d'éclairer ma lanterne !
>> Pat
>>




Avatar
PLG
Je suis très malheureux....!

C'est la première fois que je vais quitter le forum... la queue entre les
pates... ( c'est une image... il va s'en dire...) !!!
J'ai re-testé ton code, tout fonctionne sauf cette foutue C3, qui ne se
copie que sur la feuille 1.
Et non, le format de mes cellules est tout à fait normal...!
De plus la copie est intégrale ( données, format... )....!!!
J'ai Office 2007, je vais la tester ( ma version 2000 est... comment dire...
euh.... non oficielle... chut !! )


"michdenis" a écrit :

Une dernière tentative :

As-tu vérifié, as-tu un format de cellule particulier qui
t'empêcherais de voir le contenu de la cellule qui vient
d'être copié ?

Si cela fonctionne pas, je demanderais un remboursement
à Microsoft ;-))

ce code devrait fonctionner peu importe le module où le classseur
où il est situé.
With Worksheets("NomDeTaFeuille")
.Range("C3").Copy Worksheets("1").Range("A65000").End(xlUp).Offset(1, 0)
.Range("O4:P4").Copy Worksheets("1").Range("Z65000").End(xlUp).Offset(1, 0)
.Range("D4:N4").Copy Worksheets("1").Range("D65000").End(xlUp).Offset(1, 0)
.Range("C3").Copy Worksheets("2").Range("A65000").End(xlUp).Offset(1, 0)
.Range("D5:N5").Copy Worksheets("2").Range("D65000").End(xlUp).Offset(1, 0)
.Range("C3").Copy Worksheets("3").Range("A65000").End(xlUp).Offset(1, 0)
.Range("D6:N6").Copy Worksheets("3").Range("D65000").End(xlUp).Offset(1, 0)
End With






Avatar
milloche
Bonjour
J'ai une V2000 "bêta" qui traînait sur un site yougoslave à l'époque et qui est tout à
fait officielle et marche d'enfer.
Je n'ai pas les problèmes des versions actuelles.
D'ailleurs, beaucoup des répondeurs de ce forum travaillent encore avec des versions dites
archaïques pour Microsoft.
Cordialement.

"PLG" a écrit dans le message de news:

Je suis très malheureux....!

C'est la première fois que je vais quitter le forum... la queue entre les
pates... ( c'est une image... il va s'en dire...) !!!
J'ai re-testé ton code, tout fonctionne sauf cette foutue C3, qui ne se
copie que sur la feuille 1.
Et non, le format de mes cellules est tout à fait normal...!
De plus la copie est intégrale ( données, format... )....!!!
J'ai Office 2007, je vais la tester ( ma version 2000 est... comment dire...
euh.... non oficielle... chut !! )


"michdenis" a écrit :

Une dernière tentative :

As-tu vérifié, as-tu un format de cellule particulier qui
t'empêcherais de voir le contenu de la cellule qui vient
d'être copié ?

Si cela fonctionne pas, je demanderais un remboursement
à Microsoft ;-))

ce code devrait fonctionner peu importe le module où le classseur
où il est situé.
With Worksheets("NomDeTaFeuille")
.Range("C3").Copy Worksheets("1").Range("A65000").End(xlUp).Offset(1, 0)
.Range("O4:P4").Copy Worksheets("1").Range("Z65000").End(xlUp).Offset(1, 0)
.Range("D4:N4").Copy Worksheets("1").Range("D65000").End(xlUp).Offset(1, 0)
.Range("C3").Copy Worksheets("2").Range("A65000").End(xlUp).Offset(1, 0)
.Range("D5:N5").Copy Worksheets("2").Range("D65000").End(xlUp).Offset(1, 0)
.Range("C3").Copy Worksheets("3").Range("A65000").End(xlUp).Offset(1, 0)
.Range("D6:N6").Copy Worksheets("3").Range("D65000").End(xlUp).Offset(1, 0)
End With








1 2