Comment inserer des lignes en fonction d'un nombre

hello tout le monde,

je suis a la recherche d'un code vba qui me permette d’insérer un nombre de ligne déterminé en fonction d'un chiffre dans une colonne donnée.

Par exemple, si dans B2 j'ai le chiffre 2, je souhaite qu'une seule ligne soit insérer en dessous

si dans B2 j'ai le chiffre 1, je souhaite que deux lignes soient insérer en dessous

si dans B2 j'ai le chiffre 3, dans ce cas il ne se passe rien...

dans tous les cas, le chiffre mini est 1 et le maxi est 3.

Je pense que c'est assez simple a faire pour certains d'entre vous, quand a moi, j'ai beaucoup de mal a le faire ... non, je n'y arrive pas !!!!

Mais c'est pas fini (tiens ça me rappelle quelque chose ... )

Il faut aussi que dans mes 3 lignes de créer (car ça sera obligatoirement le nombre de ligne que j'aurai a chaque fois), il y ait en colonne C, ces 3 mots (un par ligne) "Manufacturer", "Control", "Release". aucune importance de l'ordre. La seule contrainte, c'est que parfois, j'ai déjà l'un ou l'autre, donc il me faudra les deux autres en dessous.

Je vous ai mis un fichier ça sera plus parlant.

Merci par avance pour votre aide.

Laurent

453-lignes.xlsx (10.81 Ko)

Bonjour

Un essai

Bonjour Banzai64,

Désolé pour le délai de réponse, mais j'étais en vacances à l'étranger, et donc pas de réseau ou tres peu...

Je viens de regarder ton fichier, c'est exactement ce que je souhaite, mais je n'arrive pas à le mettre dans mon fichier... je te joins mon fichier d'origine, si tu as la bonté de me rendre (une fois de plus ... ) ce service ...

Merci pour ta précieuse aide....

Je t'explique le fonctionnement de mon fichier.

Il faut en premier lieu faire un tri sur la colonne A, puis un second sur la colonne K et un troisième sur la colonne O. Je vais appeler ces tris "AKO" dans notre mail.

Il faudrait peut être pour nous aider, faire des tas en fonction de "AKO". Car tout le reste découle de ça.

Il faut aller dans la colonne U et regarder le chiffre qui s'y trouve.

Si j'ai 1, il faut créer 2 lignes en dessous du résultat de "AKO" et regarder dans la colonne P ce qui est écrit, car je dois avoir dans tous les cas sur les 3 lignes : Manufacturer, Control, Release .... l'ordre n'a pas d'importance.

Si j'ai 2, il faut créer 1 ligne en dessous du résultat de "AKO" et regarder dans la colonne P ce qui est écrit, car je dois avoir dans tous les cas sur les 3 lignes : la colonne MANUF_FUNCTION_NAME doit contenir : Manufacturer, Control, Release ... l'ordre n'a pas d'importance.

Si j'ai 3, rien à faire ...

Il faut prévoir que les infos des colonnes de A à O soient recopiées automatiquement dans les lignes créées.

Dans la colonne P, il faut que les 3 MANUF_FUNCTION_NAME soit remplie automatiquement, mais attention parfois il se peut qu'il y ai deux fois le mot Manufacturer et/ou Control, dans ce cas, il faut le laisser, car la colonne R est différente pour ces deux lignes.

Dans les colonnes Q,R, S elles doivent être vide, car elles seront complétées plus tard par l'utilisateur.

Dans la colonne T, il faut reprendre le champs de "AKO"

Dans la colonne U, il faut que le chiffre devienne 3 pour tout le lot, une fois que les lignes Manufacturer, Control et Release soient inserer et completer automatiquement par ta macro.

Voila je pense que je t'ai tout dit, et j'espere le plus clairement possible pour toi...

Si tu as un doute ou une hésitation, n'hésite pas à me le dire.

Encore un énorme merci pour ton aide.

Laurent

Bonjour

Un truc qui me gêne

lolo69490 a écrit :

mais attention parfois il se peut qu'il y ai deux fois le mot Manufacturer et/ou Control, dans ce cas, il faut le laisser

Donc en colonne U il y soit 3 ou 2

Si 3 je n'ai rien à faire

Si 2 je dois insérer une ligne mais que dois je marquer en colonne P ?

A te lire

en effet, si tu as 3 y a rien a faire

mais si y a 2, il faut laisser toutes les lignes existantes et créer la 3e ligne manquante ...

par exemple

1er ligne avec dans la colonne P : Manufacturer

2eme ligne avec dans la colonne P : Control

3eme ligne avec dans la colonne P : Control

dans ce cas, il faut créer une 4e ligne avec dans la colonne P : Release

Même chose si tu as 1 en U ... il se peut que tu es deux lignes avec en P Manufacturer (ecrit deux fois) ...

Attention petite précision : parfois tu as des chiffres dans la colonne U (1 ou 2), mais la colonne P est vide, il faut prévoir dans les lignes qui seront insérer par la macro, 2 lignes si tu as 1 en U et une ligne si tu as 2 en U afin d'avoir les 3 lignes au final avec Manufacturer, Control, Release.

Laurent

Bonjour

Ça se complique

lolo69490 a écrit :

il faut que le chiffre devienne 3 pour tout le lot

C'est peut-être ce renseignement qui me manque (pas besoin dans le 1er fichier)

Comment on détermine un lot ?

grace au tri des colonnes A, K et O, le resultat de ce tri forme un lot ...

le plus simple peut etre serait de concatener ces trois colonnes afin d'en avoir qu'une seule ? et donc de faire un tri par cette colonne apres ?

Bonjour

A vérifier

super, je fais un essai et je passe en phase de test et correction pour vérifier si tout fonctionne bien ...

je te tiens rapidement au courant....

MERCI pour ton aide !!!!!

Laurent

pour le moment, la seule chose que j'ai repéré c'est quand en colonne P, la case est vide, il ne faut rien inscrire dans les autres lignes de créer, car on ne sait pas à quoi correspond la ligne deja existante, et du coup, cela fausse les autres lignes.

Voila ce que j'ai trouve pour le moment ... je pense que je me pencherai plus demain.

encore merci pour tout

Laurent

Bonjour

C'est une nouvelle règle ?

J'attends le résultat de tes investigations avant de continuer

non ce n'est pas une nouvelle règle, je te l'avais mis en commentaire ... mais j'ai peut etre pas été assez clair ... je m'en excuse !

Attention petite précision : parfois tu as des chiffres dans la colonne U (1 ou 2), mais la colonne P est vide, il faut prévoir dans les lignes qui seront insérer par la macro, 2 lignes si tu as 1 en U et une ligne si tu as 2 en U afin d'avoir les 3 lignes au final avec Manufacturer, Control, Release.

d'ailleurs en me relisant, en effet, je n'ai pas ete assez clair ...

donc si dans la colonne P, y a rien d'écrit, il ne faut pas ecrire quoi que se soit, c'est l'utilisateur qui le ferra, en revanche, il faut créer les lignes en fonction du chiffre dans U.

Navré

Bonjour

Mea Culpa

Désolé j'avais zappé cette instruction

Précision : Dans le lot toutes les cellules (P) seront vides ou pas ?

tu plaisante ou tu plaisantes ... tu vas tout de même pas t'excuser !!! c'est le monde à l'envers .... c'est toi qui me rend service

Précision : Dans le lot toutes les cellules (P) seront vides ou pas ?

réponse : oui, il faut laisser vide la colonne P, et faire comme d'habitude pour les autres colonnes.

Bonjour

Tu as mal compris ou je l'ai mal posée

Dans le lot (avant l'insertion de la ligne - U = 2) les lignes du lot seront obligatoirement vides les deux ou possibilité d'une seule vide ?

alors du coup, c'est là ou j'ai un doute ... pas sûr de bien comprendre ...

tu vois savoir que si a l'origine j'ai dans un lot, deux lignes avec dans la colonne U, le chiffre 2, est ce que dans la colonne P les cases seront vides ou pas ?

Si c'est ça que tu voulais savoir, j'avoue que je ne sais pas ...

il se peut que j'ai les deux solutions ...

Bonjour

J'ai fait (j'espère - à toi de le dire) que, dans un lot, si une seule cellule est vide qu'il n'y ait pas de marquage en colonne P

A tester

Salut Bonzai,

je viens de faire un essai avec la personne qui a besoin de ton fichier, et on s'est rendu compte qu'il y a un petit souci.

Une fois la macro lancée, il y a dans la colonne P des champs vides ... et je viens de comprendre ton interrogation de l'autre fois (et oui, je suis un peu long à la détente ) ... en fait, il faudrait prevoir un controle qui fasse que les cases vides en P sont completes en fonction de ce qui peut manquer dans le lot. Et si le lot de 3 lignes est vide, il faudrait que la macro remplisse automatiquement les champs vides avec Manufacturer, Control, Release.

Merci pour ton aide et ta patience.

Laurent

Bonjour

Pas très claire ton histoire

Regardes ce fichier j'ai arrêté la macro juste après le tri

J'ai fait une MEFC en colonne P qui repère les lots

Donc quand tu vois une ligne verte cela veut qu'elle fait partie d'un lot (au moins 2 lignes identiques - car il faut prendre en compte la ligne de dessus)

Tu remarqueras des lots ÉNORMES (7-8-9 ...... lignes et plus) qui soient sont vides( dans ce cas que marque t-on ? )

Soit elles sont déjà "étiquetées" et que fait-on dans ce cas ?

Quoi qu'il en soit le fichier précédent remplissait au moins dans les cellules vides ce qui manquait

Reprends le te testes le

pas trop le temps de m'en occuper (enfin je verrai)

Rechercher des sujets similaires à "comment inserer lignes fonction nombre"