Menu

[VBA]Compter lignes puis diviser en 4 groupes [Résolu/Fermé]

Messages postés
15
Date d'inscription
jeudi 5 novembre 2009
Statut
Membre
Dernière intervention
17 février 2012
- - Dernière réponse :  lorenzozo201 - 6 nov. 2009 à 11:39
Bonjour,
Je débute sur VBA, et je suis face à cette problématique sous excel, j'ai un bloc de ligne continue d'une quantité variable, j'ai besoin de prendre ce bloc, de le diviser en 4 sous-bloc égaux (si multiple de 4 sinon par exemple un bloc de 10 et trois blocs de 11) et de coller en suite chaque sous bloc à un autre endroit afin de pouvoir utiliser tout cela en publipostage. La séquence copier-coller et déplacer, pas de problème mais par contre avant !!!! Là, je nage, faut-il utiliser un compteur ? Comment utiliser le résultat du compteur ????
Merci par avance de votre aide !!!!

A+

Lorenzozo201
Afficher la suite 

2 réponses

Messages postés
12245
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
2031
0
Merci
Bonjour,
Le nombre de lignes sous VBA Excel c'est facile :

Dim NbLignes As Integer
NbLignes = ActiveSheet.UsedRange.Rows.Count

Attention, ce code compte toutes les lignes non vides de la feuille...

Ensuite tu divises par 4 et tu fais toutes tes copy comme suit :

Dim NbLignes As Integer, Val As Integer, premlig As Integer, derlig As Integer
NbLignes = ActiveSheet.UsedRange.Rows.Count
Val = NbLignes / 4
premlig = ActiveSheet.UsedRange.Row
derlig = Range("A65536").End(xlUp).Row
Range("A" & premlig & ":A" & premlig + Val).Copy Sheets("Feuil2").Range("A1") 'ici tu fais coller ou tu veux [genre Sheets("Feuil2").Range("A1")]
Range("A" & premlig + Val + 1 & ":A" & premlig + 2 * Val).Copy 'ici tu fais coller ou tu veux
Range("A" & premlig + 2 * Val + 1 & ":A" & premlig + 3 * Val).Copy 'ici tu fais coller ou tu veux
Range("A" & premlig + 3 * Val + 1 & ":A" & derlig).Copy 'ici tu fais coller ou tu veux
0
Merci
Merci mille fois pour cela, cela marche, génial !

A+

Lorenzozo