Pb de copier coller

Résolu
TiteZ Messages postés 61 Date d'inscription jeudi 5 avril 2007 Statut Membre Dernière intervention 21 août 2007 - 28 mai 2007 à 13:03
TiteZ Messages postés 61 Date d'inscription jeudi 5 avril 2007 Statut Membre Dernière intervention 21 août 2007 - 28 mai 2007 à 15:02
Bonjour,
Quelqu'un pourrait me dire ce qu'il ne va pas dans mon bout de code?

<!-- END TEMPLATE: bbcode_code -->
Dim lignefinc AsLong
Dim lignefinm AsLong
Dim k AsInteger
Dim l AsInteger
Dim m AsInteger
 
For k = 1To lignefinc
For l = 1To lignefinm
If Workbooks("carole.xls").Worksheets(2).Cells(k, 22).Value = Workbooks("mouve.xls").Worksheets(1).Cells(l, 8).ValueThen
If Workbooks("mouve.xls").Worksheets(1).Cells(l, 4) > Workbooks("carole.xls").Worksheets(1).Cells(k, 8)Then
Workbooks("mouve.xls").Worksheets(1).Rows(l).Copy Destination:=Workbooks("mouve.xls").Worksheets(1).Cells(l, 1)
EndIf
EndIf
Next
Next

j'explique:
dans mon premier ( 2de feuille) fichier carole j'utilise les cellules de la colones 22 du texte et de la colones 8 des dates
dans mon second fichier ( 1e et unique feuille) fichier mouve j'utilise la colone 8 du texte et la colone 4 des dates,

Je souhaite que si la colone 22 du fichier 1 et la colonne 8 du fichier 2 soit égale, qu'ensuite la colone 8 du fichier 1 et la colone 4 du fichier 2 soit égale il me colle la ligne du fichier 2 dans la feuille 1 du fichier ?

le message qu'on m'indique c'est l'afiche n'appartient pas a la selection ...
Quelqu'un pourrait m'aider merci

11 réponses

drikce06 Messages postés 2236 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 10
28 mai 2007 à 14:52
Regarde ce snippet pour éviter cette erreur à chaque fois:
j'active le classeur
je sélectionne la feuille
je fais la copy
http://www.codyx.org/snippet_copier-feuille-excel_272.aspx

 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)

Si la réponse vous convient: Réponse acceptée < body>
3
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
28 mai 2007 à 14:00
Salut,

Dis moi, elles n'ont pas de valeurs ces variables :

lignefinc et lignefinm
0
TiteZ Messages postés 61 Date d'inscription jeudi 5 avril 2007 Statut Membre Dernière intervention 21 août 2007
28 mai 2007 à 14:04
ah si si j'ai oublié de les recopier là mais jlé ai defini ds mon fichier pas de pb la dessus
0
drikce06 Messages postés 2236 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 10
28 mai 2007 à 14:31
Salut,
Donc comme je te l'ai dit par ailleurs Fais un:
Workbooks("mouve.xls").Worksheets(1).Select
Juste avant la ligne de code du .copy

 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)

Si la réponse vous convient: Réponse acceptée < body>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
28 mai 2007 à 14:32
Je me demande si workbooks n'est pas vide.

Pour le savoir un coup de       msgbox  Workbooks.Count 

s'il n'est pas vide, tu pourras obtenir leur nom comme ceci:

For i = 0 To Workbooks.Count 
   Workbooks.Item(i).Name
Next
0
TiteZ Messages postés 61 Date d'inscription jeudi 5 avril 2007 Statut Membre Dernière intervention 21 août 2007
28 mai 2007 à 14:47
?
comment ça workbooks vide ?
Bah non il est bien present mon worrbooks avec 12000 ligne dans un et l'autre pas loin de 12000 ligne aussi...

Workbooks("mouve.xls").Worksheets(1....
ne veux pas passer il me mets que la methode select de worksheet a échoué...
0
drikce06 Messages postés 2236 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 10
28 mai 2007 à 14:50
Alors décompose:
Workbooks("mouve.xls").Activate
Worksheets(1)..Select ou Activate

 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)

Si la réponse vous convient: Réponse acceptée < body>
0
TiteZ Messages postés 61 Date d'inscription jeudi 5 avril 2007 Statut Membre Dernière intervention 21 août 2007
28 mai 2007 à 14:55
oui merci, je n'ai plus le message d'erreur
mais ca ne fonctionne toujours pas
meme si les cellules sont égale pour le 1er If il ne le reconnait pas!
et les cellules sont bien égale
0
drikce06 Messages postés 2236 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 10
28 mai 2007 à 14:59
Avant la condition pour être sur fais un
Msgbox Workbooks("carole.xls").Worksheets(2).Cells(k, 22).Value & "/" & Workbooks("mouve.xls").Worksheets(1).Cells(l, 8).Value

If Workbooks("carole.xls").Worksheets(2).Cells(k, 22).Value = Workbooks("mouve.xls").Worksheets(1).Cells(l, 8).ValueThen

 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)

Si la réponse vous convient: Réponse acceptée < body>
0
drikce06 Messages postés 2236 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 10
28 mai 2007 à 15:00
Vérifie également les valeurs de lignefinc et lignefinm.
Pour ça execute ton code pas à pas avec des points d"arrêts et des espion cela te permettra de voir le bug!

 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)

Si la réponse vous convient: Réponse acceptée < body>
0
TiteZ Messages postés 61 Date d'inscription jeudi 5 avril 2007 Statut Membre Dernière intervention 21 août 2007
28 mai 2007 à 15:02
non non c'est bon ayé!
en faite je coller à l'endroit ou je copier donc ....
merci
:-)
0
Rejoignez-nous