Macro pr copier autant de ligne que la valeur d'une cellule
Résolu/FerméEmi80110 Messages postés 50 Date d'inscription jeudi 30 septembre 2021 Statut Membre Dernière intervention 8 avril 2024 - 26 juin 2023 à 14:14
- Macro pr copier autant de ligne que la valeur d'une cellule
- Aller à la ligne dans une cellule excel - Guide
- Copier une vidéo youtube - Guide
- Site de vente en ligne particulier - Guide
- Partage de photos en ligne - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
5 réponses
Modifié le 13 juin 2023 à 17:14
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
13 juin 2023 à 19:09
Oups !
https://www.cjoint.com/c/MFnrjrspJxB
Cdlmnt
15 juin 2023 à 12:09
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 :-)
15 juin 2023 à 15:02
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
26 juin 2023 à 14:14
Bonjour
merci beaucoup @ccm81 StatutMembre cela fonctionne parfaitement, je peux passer a un autre dossier maintenant :-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question15 juin 2023 à 15:32
merci beaucoup je teste de suite :-)