Macro pr copier autant de ligne que la valeur d'une cellule
RésoluEmi80110 Messages postés 69 Statut Membre -
Bonjour à tous :-)
Voici le fichier concerné (qui en réalité est bien plus lourd mais pour l'exemple cela suffira):
https://www.cjoint.com/c/MFnoFvgtekh
J'aimerai si possible savoir s'il existerait une macro qui permettrait de copier cet onglet mais en me copiant chaque ligne le nombre de fois que l'indique la colonne D.
Ce fichier va me permettra d'imprimer le bon nombre d'étiquettes par référence, et 70 000 références sont concernées, donc je cherche un moyen de faire plus simple que le faire à la mano :-)
J'espère que ma demande vous semble claire.
merci d'avance pour votre aide :-)
- Macro pr copier autant de ligne que la valeur d'une cellule
- Aller à la ligne dans une cellule excel - Guide
- Partage de photos en ligne - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Comment copier une vidéo youtube - Guide
- Mètre en ligne - Guide
5 réponses
Bonjour,
Si tu utilises une version Excel supérieure ou égale à 2016, tu disposes nativement d'un outil très puissant "Power Query" (téléchargeable gratuitement pour les versions 2013 et 2010 Pro)
Regarde ce que cela pourrait donner, sachant qu'on peut ensuite supprimer des colonnes, modifier l'ordre des colonnes....
J'ai modifié ta plage de données en Tableau Structuré (TS), nommé "Tableau1"
Et dans l'onglet "PQ", le résultat de la requête. Pour mettre à jour, clic droit dans une cellule de cette requête, "Actualiser", ou dans le ruban "Données", "Actualiser tout"
Bonne apm
https://www.cjoint.com/c/MFnpn31XaiC
1000 mercis pour votre aide !!
@ccm81 StatutMembre est-il possible d'avoir le script stp ? "sécurité" oblige au boulot, de ce fait je ne peux qu'ouvrir le fichier sans pouvoir activer les macros, et de ce fait je n'ai pas accès au script.
Merci beaucoup d'avance :-)
Bonjour
Option Explicit Const FS = "Feuil1" Const FB = "Feuil2" Const lideb = 2 Const costo = 4 Const cofin = 8 Public Sub ok() Dim liFS As Long, lifinFS As Long, n As Long, k As Long, plage As Range Dim liFB As Long Application.ScreenUpdating = False liFB = lideb With Sheets(FS) lifinFS = .Cells(Rows.Count, 1).End(xlUp).Row For liFS = lideb To lifinFS Set plage = .Range(.Cells(liFS, 1), .Cells(liFS, cofin)) n = .Cells(liFS, costo).Value For k = 1 To n plage.Copy Sheets(FB).Cells(liFB, 1) liFB = liFB + 1 Next k Next liFS End With
à mettre dans un module général (Module 1 par exemple)
Cdlmnt
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question