Recopier x cellule dans une colonne
Résolu/Fermé
mchotard
Messages postés
427
Date d'inscription
vendredi 6 mai 2011
Statut
Membre
Dernière intervention
28 novembre 2024
-
30 janv. 2018 à 15:07
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 3 févr. 2018 à 09:16
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 3 févr. 2018 à 09:16
A voir également:
- Recopier x cellule dans une colonne
- Déplacer une colonne excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Formule somme excel colonne - Guide
- Trier colonne excel - Guide
- Excel cellule couleur si condition texte - Guide
3 réponses
Kuartz
Messages postés
850
Date d'inscription
vendredi 13 février 2015
Statut
Membre
Dernière intervention
15 février 2019
61
Modifié le 30 janv. 2018 à 16:37
Modifié le 30 janv. 2018 à 16:37
Bonjour,
Mets ce nom dans une variable de type String.
Fais une boucle qui va remplir de cette cellule jusqu'à la 12ème plus bas.
Petit exemple de code, faute de mieux :
Cordialement.
Mets ce nom dans une variable de type String.
Fais une boucle qui va remplir de cette cellule jusqu'à la 12ème plus bas.
Petit exemple de code, faute de mieux :
Sub code() Dim Nom As String For i = LaLigneDeLaPremiereCelluleDeCopie To LaLigneDeLaPremiereCelluleDeCopie + 11 Range("C" & i).Value = Nom 'C à remplacer par la colonne Next i End Sub
Cordialement.
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
Modifié le 30 janv. 2018 à 16:49
Modifié le 30 janv. 2018 à 16:49
Bonjour,
L'opération "Sélectionner" est destinée à un usage manuel de l'utilisateur, en VBA c'est très fortement déconseillé car jamais utile durant la macro, sauf, parfois seulement, à la fin pour restituer la main à l'utilisateur.
L'opération "Sélectionner" est destinée à un usage manuel de l'utilisateur, en VBA c'est très fortement déconseillé car jamais utile durant la macro, sauf, parfois seulement, à la fin pour restituer la main à l'utilisateur.
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
1 févr. 2018 à 21:21
1 févr. 2018 à 21:21
Bonjour,
NE PAS UTILISER SELECT !!!!
Par exemple :
NE PAS UTILISER SELECT !!!!
Par exemple :
Option Explicit Sub Recopie() Dim c As Range Dim i As Integer Set c = Worksheets("Fichier général").Range("C3").End(xlDown) For i = 1 To 12 Set c = c.Offset(1) c.Value = c.Offset(-1).Value Next i c.Activate 'Si besoin End Sub
f894009
Messages postés
17215
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
26 décembre 2024
1 711
2 févr. 2018 à 07:11
2 févr. 2018 à 07:11
Bonjour tout le monde,
un fichier avec le code que j'ai propose: https://mon-partage.fr/f/EnIpwOg6/
ici le nombre de cellule est fixe, mais ca marche
un fichier avec le code que j'ai propose: https://mon-partage.fr/f/EnIpwOg6/
ici le nombre de cellule est fixe, mais ca marche
mchotard
Messages postés
427
Date d'inscription
vendredi 6 mai 2011
Statut
Membre
Dernière intervention
28 novembre 2024
39
2 févr. 2018 à 10:34
2 févr. 2018 à 10:34
merci Patrice33470, ta macro marche super bien. Si je n'abuse pas, pourrais tu l'adapter pour que je puisse recopier 12 fois un nombre fixe de colonne. A savoir au lieu de recopier uniquement la colonne C, je voudrais pouvoir recopier de la colonne "C" à la colonne "O" et toujours 12 fois.
Sans quoi, dois je remplacer tous les "c" de la macro par D et ainsi de suite. Je suis sur que tu as une autre proposition à me faire.
Je te remercie très sincèrement et cordialement
Sans quoi, dois je remplacer tous les "c" de la macro par D et ainsi de suite. Je suis sur que tu as une autre proposition à me faire.
Je te remercie très sincèrement et cordialement
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
2 févr. 2018 à 14:30
2 févr. 2018 à 14:30
Bonjour,
Pour copier les valeurs des colonnes C à O :
Et si il y a des formules (à tirer) :
Pour copier les valeurs des colonnes C à O :
Option Explicit Sub Recopie() Dim c As Range Dim i As Integer Set c = Worksheets("Fichier général").Range("C3").End(xlDown) For i = 1 To 12 Set c = c.Offset(1) c.Resize(1, 13).Value = c.Resize(1, 13).Offset(-1).Value Next i c.Activate 'Si besoin End Sub
Et si il y a des formules (à tirer) :
Option Explicit Sub Recopie() Dim c As Range Dim i As Integer Dim j As Integer Set c = Worksheets("Fichier général").Range("C3").End(xlDown) For i = 1 To 12 Set c = c.Offset(1) For j = 0 To 12 c.Offset(0, j).FormulaR1C1 = c.Offset(0, j).Offset(-1).FormulaR1C1 Next j Next i c.Activate 'Si besoin End Sub
mchotard
Messages postés
427
Date d'inscription
vendredi 6 mai 2011
Statut
Membre
Dernière intervention
28 novembre 2024
39
3 févr. 2018 à 07:21
3 févr. 2018 à 07:21
Un super grand merci Patrice33740, tu as répondu complètement à ma demande. Et je considère donc mon problème comme résolu. Merci à tous ceux qui ont pris du temps pour d'aider.
Bon WE à tous et à bientôt peut-être, enfin le moins possible pour ne pas toujours vous déranger. D'ailleurs je viens d'acheter VBA pour les nuls afin de me perfectionner un plus.
CDLT
Bon WE à tous et à bientôt peut-être, enfin le moins possible pour ne pas toujours vous déranger. D'ailleurs je viens d'acheter VBA pour les nuls afin de me perfectionner un plus.
CDLT
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
3 févr. 2018 à 09:16
3 févr. 2018 à 09:16
Bonjour
Je te conseille vivement ce cours pour débutants, gratuit et très complet :
ftp://ftp-developpez.com/bidou/Cours/VBA/formationVBA.pdf
Cordialement
Patrice
Je te conseille vivement ce cours pour débutants, gratuit et très complet :
ftp://ftp-developpez.com/bidou/Cours/VBA/formationVBA.pdf
Cordialement
Patrice
30 janv. 2018 à 16:49
sans boucle:
A adapter avec vos variables ligne et colonne
Pourquoi deux macros ??
31 janv. 2018 à 17:13
Merci tout de même pour le dérangement
31 janv. 2018 à 21:32
Le code marche, c'est un exemple. Il faut l'adapter à votre contexte. À défaut, mettez un fichier à dispo
1 févr. 2018 à 18:55
Je suis désolé, mais je n'arrive toujours pas à recopier ma dernière cellule. Je commets surement une erreur dans la macro que je te livre ci-dessous
Sub Recopie() 'pour recopier une cellule 12 fois vers le bas
Sheets("Fichier général").Select
Range("c3").End(xlDown).Select
Dim Nom As String
For i = LaLigneDeLaPremiereCelluleDeCopie To LaLigneDeLaPremiereCelluleDeCopie + 11
Range("C" & i).Value = Nom 'C à remplacer par la colonne
Next i
Voici le résultat que j'obtiens
Col"C" Col"D"
Roy Hubert
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Fichier général
Je peux t'envoyer un fichier si tu le veux, mais je ne connais pas la procédure.
Merci de ton soutien précieux.