Copier feuille Excel d'un classeur à un autre

Résolu
elvis36 Messages postés 34 Date d'inscription mercredi 8 novembre 2006 Statut Membre Dernière intervention 8 juillet 2010 - 28 juin 2010 à 16:07
elvis36 Messages postés 34 Date d'inscription mercredi 8 novembre 2006 Statut Membre Dernière intervention 8 juillet 2010 - 29 juin 2010 à 14:19
Bonjour à tous,

Voila a macro ci-dessous me permet de copier 21 colonnes et 100 lignes d'une feuille d'un classeur à un autre classeur.
Cette macro permet de copier le contenu des cellules et la forme des cellules (tailles, couleurs), cela permet de mettre à jour plusieurs classeurs à en en modifiant qu'un seul

Voila j'ai quelques questions :
- Malgré plusieurs essais avec WorkbookOpen() je n'arrive pas à executer la macro à l'ouverture de mon classeur, comment faire???
- Il faut que mon classeur source (AMDECtrabsfert) soit ouvert pour mettre à jour le classeur Nouveau2. Est-il possible de laisser le classeur source fermé??
- Lors de l'execution de la macro les cellules vides comporte des 0, comment arriver à les avoir simplement vide ???
(j'ai essayé ça sans succès :
If (Selection.Value = 0)) Then
Selection.Delete
Else
Selection.Copy
End If

Merci par avance de vos réponses
Voici le code qui fonctionne en ayant le classeur soruce ouvert et qui affiche des 0 pour les cellules vides

Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 28/06/2010 par ....
'
Range("A1").Select
ActiveCell.FormulaR1C1 = "='[AMDECtransfert.xls]Feuil1'!RC"
Range("A1").Select
Selection.Copy
Range("A2:A100").Select
ActiveSheet.Paste
Columns("A:A").Select
Application.CutCopyMode = False
Selection.Copy
Columns("B:U").Select
ActiveSheet.Paste
Windows("AMDECtransfert.xls").Activate
Columns("A:U").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Nouveau3.xls").Activate
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'
Application.Goto Reference:="Macro1"
ActiveWorkbook.Save
End Sub

4 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
28 juin 2010 à 16:48
Salut

Beaucoup de questions.
Il aurait été sage de n'en poser qu'une à la fois, les réponses vont se mélanger et ça va être le bordel. Bref.

- "je n'arrive pas à executer la macro à l'ouverture de mon classeur"
L'auto-exécution de Workbook_Open (et pas WorkbookOpen) ne fonctionne que si le niveau de sécurité le permet : voir menu "Outils" + "Macros" + "Sécurité"

- "Est-il possible de laisser le classeur source fermé"
Oui, mais la syntaxe est différente :
Fichier restant fermé :
= 'C:\Documents and Settings\Moi\Mes documents\[mon classeur.xls]Ma feuille'!$A$1
Fichier ouvert :
='[mon classeur.xls]Ma feuille'!$A$1
Attention à l'emplacement des [ ] et '

- " Lors de l'execution de la macro les cellules vides comporte des 0, comment arriver à les avoir simplement vide "
S'il y a un zéro, la cellule n'est pas vide.
Si c'est juste une question d'affichage :
Menu "Outils" + "Options" + décocher la case à cocher "Valeur zéro"

Vala
Jack, =fr MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3
elvis36 Messages postés 34 Date d'inscription mercredi 8 novembre 2006 Statut Membre Dernière intervention 8 juillet 2010
28 juin 2010 à 22:43
Merci beaucoup pour ces réponses...
Je ne vais pas me pencher sur ce problème ce soir mais je regarde cela dès demain... Et je vous tiens au courant...
0
elvis36 Messages postés 34 Date d'inscription mercredi 8 novembre 2006 Statut Membre Dernière intervention 8 juillet 2010
29 juin 2010 à 14:16
Effectivement toutes ces astuces me sont utiles...
Pour les zéros, c'est parfait, il ne s'affiche plus, il faut connaître l'astuce...
pour Workbook_Open() plus d eproblème non plus cela fonctionne...

Pour le chemin di fichier cela fonctionne parfaitement pour le premier (ligne 7 du code) mais par contre pour la ligne 17 j'ai essayé toutes les syntaxes possibles sans succès...

De quoi ce problème peut-il venir???
0
elvis36 Messages postés 34 Date d'inscription mercredi 8 novembre 2006 Statut Membre Dernière intervention 8 juillet 2010
29 juin 2010 à 14:19
Je viens de me rendre compte que Windows("nomDuFichier.xls").Activate est une instruction fonctionnant uniquement pour les fichiers ouverts... je cherche donc une instruction pour les fichiers fermés!
0
Rejoignez-nous