Integration de ligne
Résolu
victorgirault
Messages postés
14
Statut
Membre
-
victorgirault Messages postés 14 Statut Membre -
victorgirault Messages postés 14 Statut Membre -
Bonjour,
Je souhaiterais intégrer de manière automatique 15 lignes entre chacune des ligne d'un classeur excel.
Je m'explique. Prenons :
colonne A
ligne 2 TOTO
ligne 3 Maurice
Après utilisation de ma macro...
Ligne2 TOTO
Ligne 3 TOTO
.
.
.
Ligne 17 Maurice
Et que les ligne ajoutée reprennent la cellule précédente comme expliqué.
Merci de l'aide que vous pourrez m'apporter et je reste à disposition pour tout complément d'information....
Je souhaiterais intégrer de manière automatique 15 lignes entre chacune des ligne d'un classeur excel.
Je m'explique. Prenons :
colonne A
ligne 2 TOTO
ligne 3 Maurice
Après utilisation de ma macro...
Ligne2 TOTO
Ligne 3 TOTO
.
.
.
Ligne 17 Maurice
Et que les ligne ajoutée reprennent la cellule précédente comme expliqué.
Merci de l'aide que vous pourrez m'apporter et je reste à disposition pour tout complément d'information....
14 réponses
-
-
Bonjour
Peut être comme ça ?
http://www.cjoint.com/c/EGcnTqZsOdg
Cdlmnt -
Merci beaucoup c'est exactement ma demande.
A défaut d'abuser, pourrais tu reproduire cette macro pour que cela agisse sur la colonne A et non C, et que un nombre soit inscrit sur la colonne suivante (B) pour chaque insertion de ligne.
Je reprend mon exemple:
Colonne A Colonne B
ligne 2 TOTO 4800
ligne 3 TOTO 4802
.
.
.
.
ligne 17 Maurice 4800
J'ai repris les nombres a intégrer dans mon exemple comme suit.
https://www.cjoint.com/c/EGcn3rHP3Uy
Merci ccm81 de ton aide -
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
C'est parfait, nikel, je te remercie beaucoup ccm81^^
Je pense pas réussir à te dépanner un jour donc MERCI. -
Par contre, pourrais tu me dire comment modifier ce bout de code pour que la plage sélectionner dans la constante soit en fait extrait d'une autre Feuille appelée "Table" toujours des lignes A1:A15 stp
Const plageTN = Sheets("Table").Range("A1:A15").Select -
Tu as deux solutions
1.
en début de code
Const plageTN = "A1:A15"
puis, dans la procedure
T(liT, 2) = Sheets("Table").Range(plageTN).Cells(k, 1).Value
2. Nommer la plage dans la feuille "Table", par exemple "TableNb"
puis en début de code
Const plageTN = "TableNb"
et dans la procedure (attention plus de point devant Range)
T(liT, 2) = Range(plageTN).Cells(k, 1).Value
A toi de voir -
J'ai choisi la 1ère solution cela fonctionne nikel.....merci.
Une dernière question après je te libère^^
A la place des noms donnés dans mon exemple (TOTO, Maurice,...), j'ai une série de chiffre sous ce format là ("00001681";"00000799";...).
Hors lorsque je lance la macro, cela me transforme directement ces nombres en chiffres ("1681";"799"), alors que je souhaite que le format précédent perdure.
Aurais tu un bout de code à me donner pour que j'intègre le format à la macro que tu m'as faite? -
Est ce que ces "nombres" sont des nombres au format personnalisé "00000000" ou bien sont du "texte"
-
Ils sont indiqués comme format "Standard".....?
Mais les transformer en format perso me va nikel ^^ si cela est ta question -
Tu ajoutes la ligne entre .cells et End with
Next li .Cells(lideb, 5).Resize(nbliT, 2) = T .Range(.Cells(lideb, 5), .Cells(lideb + nbliT - 1, 5)).NumberFormat = "00000000" End With
Cdlmnt -
Cela fonctionne parfaitement.
Un grand MERCIIII CCM81, tu viens de m'économiser un travail monstre.
Encore Merci et bon courage pour la suite. -
Pourrais je avoir le code pour le texte en fait stp?????^^
Merci -
Il te suffit de mettre un apostrophe devant la ligne pour l'inhiber
'.Range(.Cells(lideb, 5), .Cells(lideb + nbliT - 1, 5)).NumberFormat = "00000000"
Si tes noms sont des nombres et que ta colonne cible a été formatée "00000000" penses à la reformater en standard
Cdlmnt