[MACRO] Copie de données dans onglet cible

Résolu/Fermé
hotliner49 Messages postés 101 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 23 mars 2016 - Modifié par hotliner49 le 21/08/2014 à 17:48
hotliner49 Messages postés 101 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 23 mars 2016 - 25 août 2014 à 12:47
Bonjour,

Etant totalement novice en macro et VBA et la méthode d'enregistrement pas à pas ne me permettant pas d'atteindre mon objectif je m'en retourne vers vous.

Mon fichier:
Un onglet "Pivot central" comprenant 1 colonne de données (C5:C36) à copier dans un onglet cible.
Dans cet onglet sont présents 2 critères qui doivent déterminer l'emplacement de copie des données au sein du classeur:
- Une cellule B4 contenant NOM PRENOM qui determine l'onglet de copie. Les onglets du fichiers étant nommés selon les différentes valeurs du NOM PRENOM
- Une cellule C4 contenant MOIS ANNEE determinant l'emplacement de copie au sein de l'onglet voulu, la cellule MOIS ANNEE réapparaissant dans chaque onglet sur la ligne 10.

De plus les données devront se copier via collage spécial "Valeur et mise en forme".

Merci d'avance pour votre aide
A voir également:

7 réponses

WeaponEDGE Messages postés 113 Date d'inscription vendredi 18 juillet 2014 Statut Membre Dernière intervention 21 novembre 2014 9
Modifié par WeaponEDGE le 22/08/2014 à 15:01
Bonjour,

Serait possible d'avoir un fichier exemple (sans données personnelles) ne serait ce que pour la mise en forme.

Vous pouvez générer un lien via le site https://www.cjoint.com/ que vous copiez ensuite sur votre message.
0
hotliner49 Messages postés 101 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 23 mars 2016 3
Modifié par hotliner49 le 22/08/2014 à 15:47
Voici une version retoquée du document :
https://www.cjoint.com/?0HwpPPPUBbx

Il faut donc que la plage de données C5:D36 de l'onglet Pivot Central aille se copier dans l'onglet correspondant à la cellule B4 et dans la colonne correspondant à la cellule C4 de l'onglet Pivot central.
La copie doit se faire en collage spécial : Valeurs avec mise en forme source.

Merci d'avance
0
hotliner49 Messages postés 101 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 23 mars 2016 3
23 août 2014 à 10:27
Je vais essayer de définir le squelette de la macro si jamais un adepte du VBA passait par là:

Copier 'Pivot Central'!C4:C36
Coller via Collage Spécial (Valeurs + mise en forme) dans
Sheet name = 'Pivot Central'!B4
Emplacement = Rechercherh(C4;'Sheet ciblée'!B10:X10;1) et coller à cet emplacement.


Maintenant il ne me manque plus que la VBA.
Please, please, please,
Venez à ma rescousse.
0
hotliner49 Messages postés 101 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 23 mars 2016 3
25 août 2014 à 08:33
Et un petit UP de rigueur en début de semaine.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 707
25 août 2014 à 09:14
Bonjour,

Une petite macro qui devrait effectuer ta fonction à placer dans un module :

Public Sub transfert()
Dim col As Integer
With Sheets([B4].Value)
For col = 2 To .UsedRange.Columns.Count
If .Cells(10, col) = [C4] Then Exit For
Next col
Range("C5:D36").Copy Destination:=.Cells(11, col)
MsgBox "Copie effectuée"
End With
End Sub

Avec ton classeur : https://www.cjoint.com/c/DHzjnJuVCjD
0
hotliner49 Messages postés 101 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 23 mars 2016 3
25 août 2014 à 09:26
Merci infiniment pour ton travail.
La macro s'adapte nickel chrome.

Juste un petit point -> Au sein de la macro quel opérateur faut-il ajouter pour réaliser une copie (Valeurs + mise en forme) ?
0
WeaponEDGE Messages postés 113 Date d'inscription vendredi 18 juillet 2014 Statut Membre Dernière intervention 21 novembre 2014 9
25 août 2014 à 09:33
Bonjour,

Ci joint le fichier complété d'un bouton d'alimentation

https://www.cjoint.com/?DHzjGsn7WbU

les données sont transféré en fonction de l'onglet sélectionné et de la date d'indiqué à côté.
0
hotliner49 Messages postés 101 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 23 mars 2016 3
25 août 2014 à 10:36
Petit souci avec ta macro puisque mes valeurs sont copiées en tant que texte et non en conservant leur format actuel.
0
hotliner49 Messages postés 101 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 23 mars 2016 3
25 août 2014 à 12:47
J'ai trouvé mon bonheur avec ce code. Merci à l'Inpactien
Nitro-Teck.

Merci aussi aux 2 personnes du dessus, car certaines parties de leur code m'intéressent également.

Sub Copie()

Application.ScreenUpdating = False
'Selection de l'onglet principale
Sheets("Pivot central").Select
'Copie des cellules
Range("C4:C36").Select
Selection.Copy



'Sélection de l'onglet à copier
Nom = Range("B4")
Mois = Range("C4")

Sheets(Nom).Select
Rows(10).Find(Mois, lookat:=xlWhole).Select
Selection.PasteSpecial Paste:=xlPasteValues
Selection.PasteSpecial Paste:=xlPasteFormats

Application.CutCopyMode = False
Sheets("Pivot central").Select

Application.ScreenUpdating = True

End Sub
0