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

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

  • TEST.xlsx
    18.3 KB · Affichages: 14
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.

Dudu2

XLDnaute Barbatruc
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.
 

Ninon2019

XLDnaute Nouveau
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
 

Ninon2019

XLDnaute Nouveau
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
 

Dudu2

XLDnaute Barbatruc
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

  • test2.xlsm
    276.5 KB · Affichages: 5

Dudu2

XLDnaute Barbatruc
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

  • test3.xlsm
    275.9 KB · Affichages: 5
Dernière édition:

Ninon2019

XLDnaute Nouveau
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: 15

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 107
Messages
2 085 354
Membres
102 872
dernier inscrit
YvanCB