![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: août 2007
Messages: 11
|
Bonjour à vous tous,
Je débarque fraichement et plein d'enthousiasme sur ce forum pour vous poser une bete question de débutant VBA. Je crois que ma demande n'est pas trop compliquée (en tout cas à mes yeux de novice): -D'un coté j'ai un fichier "source" qui change chaque mois avec des données dans des tableaux stables, en d'autres mots qui ont la meme forme chaque mois. De l'autre coté un fichier "bis" semblable, avec les meme tableaux sous la meme forme, que je vais feeder chaque mois avec le fichier "source". Il y a 3 onglets à feeder de la sorte pour le fichier "bis" (avec des infos qui proviennent donc de 3 onglets différents du fichier "source") - Ce que je veux faire c'est installer un bouton sur le fichier "bis" qui permet avec un seul click d'aller chercher les infos sur le fichier "source" (les copier) pour ensuite les coller sur le fichier "bis". Je ne sais pas si j'ai été assez clair, dans tous les cas j'espère qu'une ame bienveillante avec un esprit éclairé voudra bien m'aider sur cette affaire. J'ai essayé de faire une macro toute bete mais j'imagine que ce n'est pas suffisant puisque ca n'a pas fonctionné. Et pour de la pure programmation VBA, je suis loin d'etre au point. Merci d'avance. Dernière modification par spiergili ; 24/08/2007 à 11h02. |
|
|
|
| ANNONCES | |||
|
|
|
|
#3 (permalink) |
|
XLDnaute Accro
|
Bonjour Spiergilli et bienvenue.
![]() Si tu n'as pas encore eu de réponse ( en 1h21'), c'est que ton problème n'est pas forcément si simple, que les intervenants (toujours aussi passionnés et bénévoles qu'au premier jour) ne sont pas dispo dans la minute, ou que ton problème n'a pas été bien compris... Un peu de patience, éventuellement un exemple de ce que tu as déjà fait (- de 50Ko) et une explication de texte pour moi: que veut dire "feeder"? Et je ne doute pas que tu obtiennes des réponses. Bonne journée. |
|
|
|
|
|
#4 (permalink) |
|
XLDnaute Accro
|
Re,
En lisant ton post, je vois que :
|
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: août 2007
Messages: 11
|
Merci pour ta réponse. C'est vrai que je suis un peu impatient. Je pensais que ma requete n'était pas trop compliquée...
Oui, par feeder j'entends amlimenter. Pour répondre à tes questions: - le fichier "source" comporte 3 onglets seulement; le fichier "bis" en comporte bien plus mais il contient entre autres les 3 onglets identiques à ceux du fichier "source" Le fichier "source" est le meme chaque mois dans sa structure, tout ce qui change étant la valeur des données. Je veux conservers les onglets du fichier "bis" tel quel, je veux juste modifier les infos dans l'onglet. Pour l'instant je le fais manuellement avec un bete copier/coller mais je veux automatiser cette manip pour gagner du temps. - j'ai tenté de le faire manuellement en enregistrant tout ça avec une macro mais le debug intervient en me signifiant une erreur dans "range().selection". Je pensais donc qu'il existe p-e une programmation "standard" pour ce genre de manip. Serait-il utile que je copie la formule de la macro? ou que je laisse mes fichiers? (dans les deux cas il faudra que je change les noms de certaines infos que je ne peux pas laisser trainer comme ca sur le net) Encore merci pour l'aide. |
|
|
|
|
|
#6 (permalink) |
|
XLDnaute Accro
|
Re,
Je t'ai préparé un exemple en zip: 1 classeur source et un classeur bis. les macros sont dans le classeur bis. La récupération et lancée par un bouton dans une barre d'outils personnalisée. Elle n'est visible que dans le classeur bis. la macro agit ainsi: suppression de l'onglet A dans le bis et copie de l'onglet A source vers le bis. Etc... Vois si ça convient et dis-moi |
|
|
|
|
|
#8 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: août 2007
Messages: 11
|
Mille mercis!!!! Quelle générosité!!
Je dis ça mais je n'ai même pas encore regardé le fichier, je vais m'empresser de le faire. On va voir si ça correspond à ce que je voulais. Entre temps je me suis mis à la formation en ligne de microsoft pour VBA, ça devrait m'aider.... |
|
|
|
|
|
#9 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: août 2007
Messages: 11
|
Génial, ça fonctionne!!!!!
C'est exactement ça! Je vais tenter d'appliquer ça au boulot lundi et en cas de pépin ou de besoin de modification je viendrai quémander de l'aide à nouveau. Cependant, avec la petite formation VBA que je me suis faite ça devrait jouer. Merci encore. |
|
|
|
|
|
#12 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: août 2007
Messages: 11
|
Tout fonctionne comme prévu, j'ai remplacé dans la formule le nom des fichiers que tu avais mis par le nom de mes fichiers.
Maintenant, il y a un "mais" qui résulte du fait que j'ai p-e omis de préciser une chose: une fois que j'ai mis à jour mon fichier "bis" avec les données du fichier "source", les 3 onglets du fichier "bis" (données A, B et C selon ton exemple) sont eux-memes à leur tour liés à trois autres onglets dans le fichier "bis"qui sont en fait une sorte de résumé des données précédentes mais mis en page de façon plus propre qu'à leur état brut. Ce qui se passe c'est qu'une fois la macro lancée, elle remplace les onglets comme prévu mais du coup les trois autres onglets qui sont liés n'affichent plus l'info et un message d'erreur #REF apparait dans toutes les cellules. A priori mon fichier à ce moment là ne supporte par le changement. Y'a-t-il une solution à ce problème (supplémentaire)??? Merci d'avance!!! |
|
|
|
|
|
#14 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: août 2007
Messages: 11
|
Voila, j'ai enlevé toute information confidentielle, j'ai uploadé le fichier sur ce lien:
Box.net - Free Online File Storage, Internet File Sharing, Online Storage, Access Documents & Files Anywhere, Backup Data, Send Files |
|
|
|
|
|
#15 (permalink) |
|
XLDnaute Accro
|
Salut,
Corrigé pour passer par copier/des données. Attention, il ne faut pas de lignes vides dans la plage, sinon il faudra modifier la méthode de détection de la plage à copier. D'autre part, je ne connais pas la quantité de données à traiter. Fais des essais pour voir s'il n'y a pas de problèmes lors de la copie. Code:
Option Explicit
'=====================
'Macro pour récupérer et remplacer 3 onglets d'un classeur extérieur
'voir aussi dans le module "this workook" l'activation et désactivation de la barre d'outil personnalisée
'==========================================================
Sub Récupération_des_onglets_source()
Dim Source As Workbook, Bis As Workbook
Dim i As Byte
Set Bis = ThisWorkbook
' desactive la mise à jour de l'écran
Application.ScreenUpdating = False
'==========================================================
'vérifie que le classeurSource est ouvert, sinon demande ouverture et sortie macro
On Error Resume Next
Set Source = Workbooks("Source.xls")
If Source Is Nothing Then MsgBox " Vous devez d'abord ouvrir le fichier Source!": Exit Sub
On Error GoTo 0
'=============================================================
'Suppression et remplacement des donées de feuilles
With Bis
.Worksheets("A_ca").Rows(1).CurrentRegion.ClearContents
Source.Sheets("A_ca").Rows(1).CurrentRegion.Copy Destination:=.Worksheets("A_ca").Range("A1")
.Worksheets("A_un").Rows(1).CurrentRegion.ClearContents
Source.Sheets("A_un").Rows(1).CurrentRegion.Copy Destination:=.Worksheets("A_un").Range("A1")
.Worksheets("Recap").Rows(1).CurrentRegion.ClearContents
Source.Sheets("Recap").Rows(1).CurrentRegion.Copy Destination:=.Worksheets("Recap").Range("A1")
End With
'===============================================================
Application.ScreenUpdating = True
Bis.Activate
End Sub
A+ ![]() |
|
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| Reprise des données d'un fichier xls vers un autre fichier xls | crapounet | Forum Excel | 6 | 23/05/2007 12h39 |
| Copie de feuilles d'un fichier vers un autre fichier | Céline67 | Forum Excel | 12 | 30/10/2006 17h40 |
| Probléme de copie de données d'un fichier à un autre | charkada | Forum Excel | 2 | 23/10/2006 19h39 |
| Extraction de données d'un fichier vers un autre via macro | Fab117 | Forum Excel | 6 | 19/10/2006 11h30 |
| Copie d'un userform vers un autre fichier | Christophe | Forum Excel Downloads - Archives | 2 | 04/05/2003 11h22 |