Excel Downloads
Forum

Précédent   Excel Downloads Forums > Archives > Forum Excel Downloads - Archives

Advertisement

 
 
LinkBack Outils de la discussion
Vieux 28/11/2002, 12h38   #1 (permalink)
albert
Guest
 
Messages: n/a
Par défaut Comment copier une colonne dans x feuilles pour les coller dans une même feuill

Bonjour,

Dans la feuille 2, la colonne G8 est copiée jusqu'à la dernière ligne. Elle est collée avec collage spécial dans la feuille "Rendements", colonne B2 jusqu'à la dernière ligne

Je voudrais renouveler l'opération pour la feuille 3 jusque n…
Pour coller dand la feuille Rendements, de C2 à colonne n…

Je suppose qu'il faut faire des boucles, mais mes essais sont restés infructueux…

Sub SelectRend()

Sheets(2).Range("G8").Activate
Range("G8").Select
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Selection.Copy
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
Sheets("Rendements").Select
Range("B2").Select
ActiveSheet.Paste Link:=True


End Sub





Quelqu'un peut m'aider à m'en sortir ???

D'avance merci

albert
Fichiers attachés
Type de fichier : zip exercice.zip (12,0 Ko, 0 affichages)
 
ANNONCES
Vieux 28/11/2002, 14h07   #2 (permalink)
Vériland
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

Bonjour Albert et bonjour le forum,

Tiens j'ai un p'tit creux pendant la pause café... personnellement si j'ai bien compris ta question c'est ainsi que je procéderais dans VBA pour copier les données des autres feuilles :

Sub SelectRend()
'------------------------------------------------------
'selection plage de la feuille 2
'------------------------------------------------------
Sheets(2).Select
Range("G8").Select
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Selection.Copy
Sheets("Rendements").Select
Range("B2").Select
ActiveSheet.Paste Link:=True
'------------------------------------------------------
'selection plage de feuille 3
'------------------------------------------------------
Sheets(3).Select
Range("G8").Select
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Selection.Copy
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
Sheets("Rendements").Select
Range("C2").Select
ActiveSheet.Paste Link:=True
'------------------------------------------------------
'selection plage de feuille 5
'------------------------------------------------------
Sheets(5).Select
Range("G8").Select
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Selection.Copy
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
Sheets("Rendements").Select
Range("d2").Select
ActiveSheet.Paste Link:=True
'------------------------------------------------------
'selection plage de feuille 6
'------------------------------------------------------
Sheets(6).Select
Range("G8").Select
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Selection.Copy
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
Sheets("Rendements").Select
Range("E2").Select
ActiveSheet.Paste Link:=True
End Sub

A mon avis y'a forcement plus simple... j'suis pas un vrai Macrologue... mais ça a l'avantage de fonctionner...

A+ Vériland
 
Vieux 28/11/2002, 14h31   #3 (permalink)
albert
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

merci Veriland, ça marche à merveille,
je ne m'attendais pas à avoir une réponse aussi rapide.

.... et si je fais 40, voire 50 colonnes... Tu as une idée pour faire des boucles
(de mon côté, je vais chercher, si je trouve, je fais un post avec le code

sincères salutations
albert
 
Vieux 28/11/2002, 16h24   #4 (permalink)
Vériland
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

Re Albert,

Voilà qui va te faire plaisir je pense... la macro suivante que je t'ai créée fait le résultat que je t'ai donné auparavant mais en boucle... je te laisse découvrir son principe, ça a l'avantage d'être plus facile a paramétrer...

Sub SelectionLigneEtColle()
'-----------------------------------
A = 4
B = 2
col = 1
'-----------------------------------
For I = 1 To A
Sheets(B).Select
Range("G8:g22").Select
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Selection.Copy
'-----------------------------------
Worksheets("Rendements").Activate
If col = 1 Then Range("B2").Select
If col = 2 Then Range("C2").Select
If col = 3 Then Range("D2").Select
If col = 4 Then Range("E2").Select
ActiveSheet.Paste Link:=True
Application.CutCopyMode = False
'-----------------------------------
B = B + 1
col = col + 1
'-----------------------------------
Next I
End Sub

Du coup c'est moins long... non !!??!!

Bonne continuation

A+ Vériland
 
Vieux 28/11/2002, 16h26   #5 (permalink)
Vériland
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

Oups... Albert... j'oubliais juste un détail qui à son importance... il faut que tu places la feuille "Rendements" en première position... pour que ce la fonctionne...

Voilà

A+ Vériland
 
Vieux 28/11/2002, 19h31   #6 (permalink)
albert
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

merci Veriland
je t'ai envoyé mon travail sur email
il est possible que la mise à jour des cours bogue- il faut indiquer l'adresse du disque dur dans la macro 1 (à chercher avec l'enregistreur de macro)

albert
 
Vieux 28/11/2002, 21h08   #7 (permalink)
Vériland
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

Salut Albert,

Ok,mais là j'ai pas trop le temps je verrai tout çà la semaine prochaine... bon week-end...

A+ Vériland
 
Vieux 28/11/2002, 23h14   #8 (permalink)
@+Thierry
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

Bonsoir

Tu te débrouilles bien VBriland ! oups !! Vériland !! lol

Il te manque plus qu'à déclarer tes variables et on va pouvoir partir en vacances avec Ti et STéphane !!

@+Thierry

PS :
====> Dim A As Integer, B As Integer, Col As Integer, I As Integer

NB :
On serait bien sûr tenté d'écrire :
Dim A, B, Col As Integer

Mais John Walkenbach explique bien dans son bouquin que celà équivaut à écrire : (dans l'aide aussi à "Dim" exemple)
Dim A As Variant, B As Variant, Col As Variant, I As Integer

Par contre ceci pour les "pros" qui tapent du VB comme une opératrice de saisie ... :
Dim A%, B%, Col%, I%
= Dim A As Integer, B As Integer, Col As Integer, I As Integer

Dans l'exemple de Vériland les 4 variables sont de type "Integer" (2octets en mémoire), si elles ne sont pas déclarées (ou mal déclarées) elles seraient systématiquement considérées "As Variant" qui est le seul moyen que le visual basic a de gérer "n'importe quoi" (pouvant contenir des données numériques, des chaînes de string ou des dates) 16 à 22 octets (plus la longueur de la chaîne)

D'où l'importance de savoir déclarer les variables dans l'optimisation maximum de tout programme... D'ailleurs je recommande vivement à Albert de copier cette déclaration en Integer juste en dessous du : "Sub SelectionLigneEtColle ()... çà ira toujours plus vite...

Arf avant de partir, comme Ti l'a déjà recommandé....

"Option Explicit" en haut (au top) de chaque module, comme çà vous êtes OBLIGE de déclarer les variables !! (il y a même l'option pour que tous les nouveaux modules contiennent cette "Option d'être explicit" et de ne pas faire bosser l'ordi pour rien....... (et d'éviter des plantages plus ou moins graves)

Bon çà y est c'est un PS qui fait un roman !!

Bonne Nuit, j'ai un programme à finir pour le bureau... et pour demain...
@+Thierry
 
Vieux 30/11/2002, 09h59   #9 (permalink)
albert
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

merci Thierry,
en effet lorsque je travaille sur macro je ne pense pas toujours à déclarer les variables...

j'ai rectifié.

J'en profite pour manifester mon admiration sur la capacité de vériland à traiter les boucles.... moi j'ai passé des heures à chercher (en vain)...

Cordialement

albert
 
Vieux 03/12/2002, 20h11   #10 (permalink)
Vériland
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

Albert, permet moi de t’adresser mes remerciements sur ce post...je suis très touché à propos de ton admiration sur mon exemple en boucle...

Il faut savoir que cette solution aurait pu être donnée par plusieurs personnes présentes sur ce site...la vérité c’est que la plupart ont même un niveau bien supérieur au mien...il se trouve qu’à ce moment j'étais disponible...

Je suis un utilisateur d’Excel parmi d’autre et j’essaye de transmettre ce que j’ai appris...je ne détiens pas le avoir absolu...Je me suis investi sur ce post car il correspondait à mes compétences...en même temps à chaque fois que je réponds je désire venir en aide à un collègue en difficulté, je tiens à le satisfaire...quelque part je me lance même une défi personnel...j'entends par collègue une personne passionnées par Excel désireux de trouver une aide...

A l'heure où je te parle, j'en connais certains qui auraient peut-être fait un post "allo pass" pour cette solution...c’est pas du tout ma philosophie...surtout à l'intérieur de ce forum...j’espère juste que les évènements survenus dernièrement n’auront pas entachés la motivation de ceux qui s’investissent d’une manière spontanée...

Bon là je vais regarder ton fichier et lui apporter certaines adaptations suivant le niveau de mes compétences...je te tiens au courant

Bonne continuation

A+ Vériland
 
Vieux 26/07/2003, 19h20   #11 (permalink)
Absolut
Guest
 
Messages: n/a
Par défaut Re: Comment copier une colonne dans x feuilles pour les coller dans une même feuill

J'ai une question: j'exploite un fichier Excel avec un programme en visual basic. Lorsque je copie ma selection et que je la colle je ne recupere plus que les valeurs, je perd les formules....what can I do?
Merci.
 
ANNONCES
 

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +2. Il est actuellement 03h52.


(C) 2006 Excel Downloads