|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
Bonjour,
Je cherche à développer une macro mais je me trouve confronté à un problème que je n'avais jamais vu. J'essaie de sélectionner une case dans mon fichier Excel grâce à ma macro mais j'obtiens l'erreur '1004'. Code :
Est-ce que quelqu'un pourrait m'aider svp ? |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() J-Pierre CatherineConception Calcul Inscription : juillet 2007 Messages : 659 ![]() |
Bonjour
redonne la définition de l'erreur 1004 A tu essayé avec
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci ![]() ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
Merci de ta réponse mais j'ai essayé ce code, la selection se fait mais elle est vide car si je fais :
Ma case est vide et si je fais: Je n'ai rien dans ma msgbox... Par contre je n'est plus l'erreur "run time error '1004' , select method of range class failed". |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() J-Pierre CatherineConception Calcul Inscription : juillet 2007 Messages : 659 ![]() |
Je ne comprend pas trop
ta cellule est vide
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci ![]() ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
la cellule Cells(1, 2) contient une valeur mais lorsque je lance ma macro et que je fais mes différents tests c'est comme si ma cellule était vide alors qu'à la base elle contient bien une valeur. Si je copie/colle ma case, qui contient la valeur "10" par example, grâce à ma macro, je n'ai aucune valeur qui apparait lors de mon collage... C'est ça que je ne comprends pas.
|
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() J-Pierre CatherineConception Calcul Inscription : juillet 2007 Messages : 659 ![]() |
Et quand ta macro est terminée ta cellule contient toujours 10 ?
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci ![]() ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
Ouai la case initiale contient toujours 10 mais la case de destination où j'ai copié la valeur ne contient aucune valeur. C'est vraiment bizarre. Je me demande si ce n'est pas une configuration du fichier excel qui génère ce problème
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() J-Pierre CatherineConception Calcul Inscription : juillet 2007 Messages : 659 ![]() |
Là, je suis vraiment désolé, je ne vois pas non plus
Avec quelle version Excel tu travail?
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci ![]() ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
Je travaille sous Excel 2003. J'avais déjà rencontrer ce problème une fois. Et c'est très étrange parce que si j'enregistre la macro avec l'enregistreur de macro et que je la lance, ça copie/colle les cases sans problème. Mais si je copie le code de cette macro enregistrée dans un bouton par exemple, ça ne marche plus.
C'est vraiment étrange... |
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() J-Pierre CatherineConception Calcul Inscription : juillet 2007 Messages : 659 ![]() |
Et en reboutant ton PC?
a tout hasard.....
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci ![]() ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
|
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
non ca ne change rien... C'est vraiment une erreur bizarre... je vais poster un nouveau topic sur le forum voir si quelqu'un a déjà eu ce problème
|
|
|
00
|
|
|
#12 | ||
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
Bonjour,
Je travaille sur une macro qui doit copier des cellules d'un fichier dans un autre mais il n'arrive pas à selectionner ma case, il met l'erreur '1004'. Si je mets simplement g=cells(1,2) et msgbox g , j'ai aucune valeur qui ne s'affiche dans ma msgbox et pourtant il y en a bien une... J'ai fait plusieurs tests, avec différents activate, une façon de selectionner différente mais rien n'a marché, au pire j'ai eu l'erreur '1004' qui a disparu mais quand je copiais la case, celle-ci était considéré comme une case vide. Voilà un petit bout du code pour montrer l'erreur: Code :
|
||
|
|
00
|
|
|
#13 | ||
|
Membre Expert
![]() Retraité Inscription : avril 2011 Messages : 692 ![]() |
Bonjour,
Tu peux essayer avec Code :
|
||
|
|
10
|
|
|
#14 |
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
Merci,
Ce code marche mais par contre je ne sais pas comment je peux l'utiliser pour copier des données dans un autre classeur. Mon but est de copier des donnée sous une certaine condition, de changer de classeur puis de les coller dans le nouveau classeur. Comment est que je peux faire ça ?
|
|
|
00
|
|
|
#15 | ||
|
Membre Expert
![]() Retraité Inscription : avril 2011 Messages : 692 ![]() |
Voici un exemple de copie avec 2 classeurs ouverts.
Copie de la plage B2:B7 de la feuille Daily du classeur 1 dans la plage B7:B12 de la Feuil1 du classeur2. Code :
|
||
|
|
10
|
|
|
#16 | ||
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
ok parfait pour le copier/coller. Merci !
Par contre si j'utilise une fonction " if ", la valeur de la case n'est pas prise en compte, par exemple : Code :
|
||
|
|
00
|
|
|
#17 |
|
Membre Expert
![]() J-Pierre CatherineConception Calcul Inscription : juillet 2007 Messages : 659 ![]() |
bonjour
as-tu essayé avec tu dis
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci ![]() ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
|
|
|
00
|
|
|
#18 |
|
Invité de passage
![]() Étudiant Inscription : octobre 2011 Messages : 11 ![]() |
j'ai essayé mais ça ne change rien, j'ai l'impression que c'est les données que je copie qui ont un problèmes. En fait au départ elles étaient en CSV puis je les ai converti en excel. est-ce que ça peut jouer ?
|
|
|
00
|
|
|
#19 |
|
Membre Expert
![]() Retraité Inscription : avril 2011 Messages : 692 ![]() |
Lorsque tu travailles avec plusieurs classeurs ou feuilles, prends soin de préciser à quel classeur ou feuille tu fais référence quand tu écris ton code.
Code :
If Workbooks("Classeur1.xls").Worksheets("Données").Cells(i, 1) = 10 Then |
|
|
00
|
|
|
#20 |
|
Membre Expert
![]() J-Pierre CatherineConception Calcul Inscription : juillet 2007 Messages : 659 ![]() |
Il doit te manquer un .
Ou en essayant de forcer le type Code :
If CStr(.Cells(i, 1).Value) = "10" Then Code :
If CStr(Trim(.Cells(i, 1).Value)) = "10" Then Tu dis
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci ![]() ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
|
|
|
10
|
Copyright © 2000-2012 - www.developpez.com