XL 2016 Insérer des lignes copiées pour chaque valeur

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Ninon2019

XLDnaute Nouveau
Bonjour à tous,
Je vous expose mon problème. J'ai beau chercher sur les forums je ne trouve pas la solution et le faire manuellement est trop long.

Feuille 1 : j'ai une liste de valeurs

---A------B---C
1--1234--------
2--2536--------
3--7689--------
4---------------

Feuille 2 : j'ai ces mêmes valeurs avec au dessus les sous group

-------C
2-- Sous group
3--Payroll
4--Service employee
5--Temporary costs (etc)

------A----------------------B
32--CC-------------------Sous group
33--1234 (=feuille1!A1)--------------
34--2536 (=feuille1!A2) -------------
35--7689 (=feuille1!A3)-------------
36--------(=feuille1!A4)-------------

Je souhaiterais insérer les sous groups pour chaque ligne, peu importe si elle est vide. Je souhaiterais aussi figer les formules de la colonne A pour avoir le même CC (au pire je le ferai manuellement). Cela donnerait comme résultat :

------A----------------------------B
32--CC-----------------------Sous group
33--1234 (=feuille1!$A$1)---Payroll
34--1234(=feuille1!$A$1)----Service employee
35--1234(=feuille1!$A$1)----Temporary costs
36--2536 (=feuille1!$A$2)---Payroll
37--2536 (=feuille1!$A$2)---Service employee
38--2536 (=feuille1!$A$2)---Temporary costs
39--27689 (=feuille1!$A$3)---Payroll
40--7689 (=feuille1!$A$3)---Service employee
41--7689 (=feuille1!$A$3)---Temporary costs
42--------(=feuille1!A4)-------Payroll
43--------(=feuille1!A4)-------Service employee
44--------(=feuille1!A4)-------Temporary costs

J'espère que cela est clair. Je vous remercie beaucoup pour votre aide!
 

Pièces jointes

Solution
Oublie ce que je t'ai envoyé, c'est un escargot.
Je me suis rappelé des vertus des tableaux en mémoire qui rendent les choses infiniment plus rapides et j'ai fait une nouvelle macro qui met des pattes de guépard à l'escargot.
Finie aussi la barre de progression.
Bonjour,
Je ne suis pas sûr de comprendre ton truc, mais d'après ce que j'ai compris, il suffit de copier les lignes des COFIS SUBGROUP et de les insérer manuellement là où tu veux.
Au pire tu enregistres une macro pour 1 manip, tu y corriges la cellule de départ en ActiveCell, tu l'associes à un <Ctr> + lettre, puis tu l'exécutes en sélectionnant l'endroit d'insertion à chaque fois.

Et tu ferais bien de montrer sur 1 occurrence au moins, ce à quoi tu veux arriver au lieu de faire des phrases donnant lieu à interprétations.
 
Merci beaucoup cela fonctionne. Si je dois avoir des valeurs CC nulles quelle partie du code je peux supprimer pour que les lignes soient qd meme insérées ? J'ai essayé d'enlever la partie suivante mais ca a fait buger le programme.

'Sub Interne de test valeur CC numérique non nulle

IsNumericNoNull:

Bool = False

If IsNumeric(ActiveSheet.Cells(i, NoColonneCC).Value) Then

If ActiveSheet.Cells(i, NoColonneCC).Value > 0 Then Bool = True

End If
 
J'ai également essayé de copier coller le programme et créer une nouvelle macro et j'ai ce message. Avec le programme du fichier que vous m'avez renvoyé je n'ai pas le message. Est-ce qu'une autre manip est nécessaire ou j'ai oublié quelque chose ?

Merci

1599758414574.png
 
Oublie ce que je t'ai envoyé, c'est un escargot.
Je me suis rappelé des vertus des tableaux en mémoire qui rendent les choses infiniment plus rapides et j'ai fait une nouvelle macro qui met des pattes de guépard à l'escargot.
Finie aussi la barre de progression.
 

Pièces jointes

Si je dois avoir des valeurs CC nulles quelle partie du code je peux supprimer pour que les lignes soient qd meme insérées ?
Donne un exemple ça sera plus explicite.

Mais s'il y a des "trous" dans la liste de codes CC, ça pose le problème de délimiter le début et la fin de cette liste.
Je vais changer de méthode pour identifier les codes CC et considérer que la présence d'une formule dans la colonne des codes CC signifie qu'il faut faire l'insertion des codes COFIS.

Voici le fichier qui fait ça.
 

Pièces jointes

Dernière édition:
Donne un exemple ça sera plus explicite.

Merci la macro fonctionne parfaitement! La barre de progression était sympa- mes contrôleurs de gestion auraient été ravis ;-) - mais tant pis, l'essentiel c'est que ca marche. Dans la colonne C j'ai des valeurs non nulles.
Dans le fichier initial que j'avais joint j'ai des CC à blanc. Quand je lance la macro il semblerait que se soit ce bout de code qui bloque.
1599766131142.png

1599766256883.png
 

Pièces jointes

  • 1599766102352.png
    1599766102352.png
    8.2 KB · Affichages: 16
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour