|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||||
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Bonjour à tous,
je me résous à créer mon propre poste après avoir écumer les forums et les aides. J'ai en fait deux tableaux Excel. ( Enfin un csv et un excel mais le temps de tester je le laisse en xls et regarderait après comment le convertir ). Le premier tableau est une extraction de données réalisée toute les semaines. Dans ce tableau un certain nombre de données sont stockée, en gros de A1 à I600 sur une seule feuille. Il faut ensuite copier ces données dans la première feuille du second classeur qui les traite ensuite dans les feuilles suivantes. Mon Pb vient de la copie entre les classeurs. J'ouvre les deux classeurs via des boutons dont le code suis : pour le fichier de destination Code :
Code :
Code :
J'avais aussi testé cela : Code :
Workbooks("wbprevious").Worksheets(1).Range("A1:i600").Value = Workbooks("wbsource").Worksheets(1).Range("A1:i600").Value j'ai aussi testé : Code :
Je suis donc bloqué à cet endroit. Si quelqu'un avait la gentillesse de jeter un oeil pour me filer un coup de main ce serait super chouette. D'avance merci à tous et bonne continuation. |
||||||||
|
|
00
|
|
|
#2 | |||||
![]() ![]() Développeur informatique Inscription : mai 2002 Messages : 1 945 ![]() |
Bonjour,
Citation:
1/ la portée des variables wbsource/wbprevious soit compatible avec le code. 2/ de vérifier la validité de l'objet après son affectation surtout quand la choix est laissé à l'utilisateur 3/ Attention à l'utilisation de Sheets utilisé avec le numero de feuille : Sheets est la collection de TOUTES les feuilles (graphes etc) qui ne supporte pas la méthode demandée lui préférer la collection Worksheets qui ne concerne que les feuille de calcul Code :
A
__________________
Je fournis pelles et pioches mais jamais l'huile de coude. ________________________________________________ « Heureux soient les fêlés, car ils laisseront passer la lumière. » Pensez aux liens Rechercher - Google - Google Labs - AllApi et avant de poster : « A lire » , « Tutoriel sur le déboguage » |
|||||
|
|
00
|
|
|
#3 | |||||
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Bonjour,
merci infiniment pour ta réponse ! Bon j'ai pas tout compris à tes remarques alors je me suis renseigné un peu. Pour la portée des variables, en cherchant un peu j'ai vu que je n'avais pas mentionné dans mon post la façon dont j'avais déclaré mes classeurs. J'avais utilisé Dim en début de feuille. Apparemment il vaut mieux utiliser private ou public. J'ai testé avec les deux mais j'ai eu le même résultat. Code :
Code :
Citation:
Encore merci pour ton aide et si tu pouvais me prêter encore un peu tes outils que je continue a verser mon huile de coude, ce serait vraiment cool de ta part ^^ |
|||||
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Je joints mes fichiers au passage, ça pourrait être plus clair
|
|
|
00
|
|
|
#5 | ||||
![]() ![]() Développeur informatique Inscription : mai 2002 Messages : 1 945 ![]() |
Citation:
Citation:
Code :
__________________
Je fournis pelles et pioches mais jamais l'huile de coude. ________________________________________________ « Heureux soient les fêlés, car ils laisseront passer la lumière. » Pensez aux liens Rechercher - Google - Google Labs - AllApi et avant de poster : « A lire » , « Tutoriel sur le déboguage » |
||||
|
|
00
|
|
|
#6 | ||
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Merci de ton implication !
Je dois vraiment être à un niveau proche de zéro car je ne comprends toujours pas ce que tu veux dire :/ Mes déclaration publiques sont en haut de la feuille s'appelant form1.frm et je n'ai aucun code parlant de debug.assert. Je ne sais pas si je devrais... En tout cas j'ai refais des tests sur ma formule de copie, en remplaçant de, façon à faire la copie dans le même classeur. De wbsource vers wbsource ça fonctionne, de wbprevious vers wbprevious ça fonctionne aussi, même en changeant de feuille. Il n'y a que lorsque je fait la copie d'un classeur à l'autre que j'ai mon erreur. Lors de mon test je ne changeais que les noms de classeur, rien d'autre dans la formule. J'ai toujours l'erreur 1004 la méthode pastespecial de la classe Range a échouée. avec la ligne suivante surlignée Jaune: Code :
|
||
|
|
00
|
|
|
#7 | ||
![]() ![]() Développeur informatique Inscription : mai 2002 Messages : 1 945 ![]() |
Tu crées dans ton code 2 instances distinctes d'Excel en utilisant le même object Application.
Il ne faut pas être ensuite étonné qu'il y perde son latin. ![]() Code :
__________________
Je fournis pelles et pioches mais jamais l'huile de coude. ________________________________________________ « Heureux soient les fêlés, car ils laisseront passer la lumière. » Pensez aux liens Rechercher - Google - Google Labs - AllApi et avant de poster : « A lire » , « Tutoriel sur le déboguage » |
||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Bonsoir, je n ai pas pu regarder depuis hier, je regarde ça en début de semaine
Encore merci et bon Week End ! |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Bonjour,
je suis en train de me replongé dans ce casse tête, avec tes dernières pistes je suis tombé sur deux fils de forum qui me semble correspondre a mon souci. J'essaie de comprendre la gestion de plusieurs instances d'excel. Mais dans mon cas, je dois ouvrir mes deux classeurs ds la même instance ou utiliser deux instances comme je semble le faire ? ( mais j'ai pas fait exprés m'sieur) Bon week end si personne ne regarde d'ici la semaine prochaine ^^ |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
petite nouveauté, en utilisant :
Code :
Set appExcel = CreateObject("Excel.Application") |
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Bonjour, je reviens vers vous car je suis toujours bloqué, je ne comprends pas ce que je dois faire avec ces fichues instances. Je vois plein de sujets sur differents forums qui traite de choses plus ou moins similaire mais je n'arrive jamais à adapter le cas au mien. Je suis toujours bloqué sur le même message d'erreur 1004 qui refuse de copier les données dans le second classeur :/
Un petit coup de pouce supplémentaire serait tres bien venu D'avance merci pour votre aide |
|
|
00
|
|
|
#12 | |
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Bonjour,
je reviens sur le sujet car j'ai réussi à m'en sortir finalement !! Enfin ! Voila le code qu'il afut mettre pour une copie : Citation:
|
|
|
|
00
|
|
|
#13 |
![]() ![]() Développeur informatique Inscription : mai 2002 Messages : 1 945 ![]() |
La solution était déjà dans le contenu de cette file.
__________________
Je fournis pelles et pioches mais jamais l'huile de coude. ________________________________________________ « Heureux soient les fêlés, car ils laisseront passer la lumière. » Pensez aux liens Rechercher - Google - Google Labs - AllApi et avant de poster : « A lire » , « Tutoriel sur le déboguage » |
|
|
00
|
|
|
#14 | |
|
Invité de passage
![]() Inscription : septembre 2009 Messages : 12 ![]() |
Salut,
ben mon pb avait l'air d'être simplement de la syntaxe. Apparement après le .copy la destination doit etre definie Citation:
Encore merci à ton aide, passe de bonne fêtes de fin d'année et longue vie au forum. |
|
|
|
00
|
Copyright © 2000-2013 - www.developpez.com