Macro transfert des valeurs d'une sélection multiple
- Messages
- 13
- Excel
- PC 2010 & Mac 2008
- Inscrit
- 08/08/2016
- Emploi
- Protecteur de volcans
Bonjour le forum,
Cela fait plusieurs jours que je bloque sur ma macro.
J'ai soumis une question la semaine dernière pour laquelle je n'ai eu aucune réponse.
Dans l'espoir que de nouvelles personnes passeront par la je vous soumets à nouveau ma requête.
Merci d'avance pour votre aide,
Paretoptimal a écrit :Bonjour le forum,
J'utilise un convertisseur pour ventiler mes données d'aide au développement en fonction du pays et du secteur bénéficiaire de l'aide. A partir des données par projet dans les colonnes AO à AS j'ai mes données ventilées dans les colonnes I à AM.
Avec l'aide du forum (https://forum.excel-pratique.com/excel/coller-valeurs-selection-multiple-vers-autre-feuille-t81448.html) j'ai trouvé une macro qui me permettait de faire un collage spécial du convertisseur vers ma page résultat dans le même format pour une agence bilatérale (du type AFD).
Sub test() Dim C As Range Sheets("Convertisseur").Select Dim MyRange As Range Set MyRange = Union( _ Range("I14:AM25"), _ Range("I32:AM37"), _ Range("I41:AM91"), _ Range("I100:AM123"), _ Range("I127:AM141"), _ Range("I148:AM156"), _ Range("I160:AM179"), _ Range("I183:AM196"), _ Range("I201:AM219")) MyRange.Select For Each C In Selection Sheets("bi").Range(C.Address).Value = C.Value Next C End Sub
Je dois maintenant effectuer ce travail pour des agences multilatérales (Banque mondiale FMI etc).
Les feuilles sont différentes car je transfert les données des colonnes I à AM de mon convertisseur dans les colonnes AR à BV de ma page résultat. A partir de ces données j'ai automatiquement la ventilation pour la france dans la plage I à AM de la page résultat.
Ainsi je veux copier les valeurs de
Set MyRange = Union( _ Range("I14:AM25"), _ Range("I32:AM37"), _ Range("I41:AM91"), _ Range("I100:AM123"), _ Range("I127:AM141"), _ Range("I148:AM156"), _ Range("I160:AM179"), _ Range("I183:AM196"), _ Range("I201:AM219"))
Dans la page convertisseur.
Pour les rentrer aux coordonnées.
Set YourRange = Union( _ Range("AR14:BV25"), _ Range("AR32:BV37"), _ Range("AR41:BV91"), _ Range("AR100:BV123"), _ Range("AR127:BV141"), _ Range("AR148:BV156"), _ Range("AR160:BV179"), _ Range("AR183:BV196"), _ Range("AR201:BV219"))
De la page "multi".
Merci d'avance pour votre aide
Bonne journée à tous
PJ: un classeur ZIppé avec une feuille "multi" pour l'aide multilatérale et le convertisseur. Vous trouverez une feuille aide bilatérale dans mon autre post si besoin.