Macro inserer nouvelles lignes en copiant le contenu de quelques colonnes

Bonjour,

Dans le tableau ci-joint qui est une démo anonymisée d'une version contenant 600 lignes (J'aimerais prévoir le coup jusqu'à au moins 1000), j'aimerais avoir une macro qui fasse apparaître un mini bouton sur la gauche (Pas besoin de faire un truc qui prend de la place et de la visibilité si je sais qu'il est là) pour automatiquement insérer une nouvelle ligne en dessous de celle correspondant au bouton sur lequel j'ai cliqué.

Le premier objectif avec cette macro serait que seulement certains contenus soient conservés, comme les colonnes A, B, C, D, E, R, S, T, U, V, W, X mais que les cellules des autres colonnes restent vierges.

Le second objectif avec cette macro, serait d'éviter que la mise en forme conditionnelle se duplique à chaque insertion de ligne, mais que la mise en forme conditionnelle de la ligne déjà existante s'étende à la nouvelle. Mais au pire, si cette partie ne se fait pas, c'est pas le plus important.

Je suis pessimiste sur la faisabilité du second objectif, mais on sait jamais.

Je vous souhaite une agréable journée.

Bonjour

J'ai mis un bouton nouveau qui ajoute une ligne

Suite aux formules des colonnes L,M,N il y a le lancement d'un fichier...

A+ François

Bonjour,

L'idée serait d'avoir la même chose, mais pour chaque ligne avoir ce bouton permettant d'insérer une ligne entre la ligne du bouton et la ligne en dessous du bouton.

Est-ce possible ?

Je te souhaite une agréable journée.

Bonsoir Ciol, fanfan38, le forum,

• Pour votre première demande :
Si vous cliquez sur une cellule remplie de la colonne 'B', un petit '+' apparaît dans le colonne 'A'.
Si vous cliquez sur ce petit '+', un ligne est ajoutée en dessous en respectant vos demandes concernant le remplissage de certaines cellules.

• Votre deuxième demande :
Vous avez certainement remarqué qu'un ajout ou une suppression de ligne, un copier ou un coller de ligne mettent le 'bazar' dans les MFC d'une feuille.
Donc pour mettre de l'ordre dans le 'capharnaüm' de vos MFC, j'ai créé une macro qui règle le problème.
Cette macro se déclenche lors de l'appui sur le petit '+' lors de l'ajout de ligne.

Avantage : les MFC sont alors supprimées puis recrées immédiatement en tenant compte des lignes ajoutées.
Cela évitera de vous retrouver dans la même situation.
Inconvénient
: toutes les MFC qui seront créés à la main seront détruites lors d'un ajout de ligne.
Il faudra les créer, mais dans la macro...

Attention, dans le classeur :
Le nom de l'onglet 'SUIVI Contrats ' est écrit avec un espace à la fin. C'est dangereux si vous faîtes appel au nom de l'onglet dans des formules.
Deux MFC en cellule 'A1' n'ont pas de référence, et donc ne servent à rien...

Bons tests, mais vérifiez bien la justesse des MFC reproduites, une coquille à pu se glisser...

Cordialement.

AL 22

Bonjour,

Merci pour cette solution impressionnante, il s'agit peut-être d'un problème de compatibilité, mais lorsque je clique sur une cellule, le message suivant apparaît :

capture

Et en cliquant sur Débogage, je tombe sur ça.

capture 1

La macro est trop complexe pour que je trouve l'origine du problème.

Je te souhaite une agréable journée.

Bonjour Ciol

En remplaçant la fonction ET( par AND(, cela change t'il quelque chose?

Bonjour à tous,

À la lecture de votre post j'ai testé le classeur sur ma version Excel 2013, la même qui est déclarée dans votre profil.
Et je n'ai absolument aucun bug ! Tout fonctionne correctement !

Curieux, la copie d'écran que vous joignez montre que vous avez cliqué dans la cellule 'C11', or il est impossible que la macro en cause se déclenche car elle est configurée uniquement si on clique sur une cellule de la colonne 'B' (et encore, pas partout).
La ligne surlignée est conforme.

• @ scraper :
Merci pour votre intervention, il faut tester, mais cela fonctionne t-il chez vous sans modifier ?

• @ Ciol :
Votre version d'Excel est-elle en anglais (pour reprendre l'idée de scraper) ? Avez vous modifié quelque chose dans la macro de la feuille 'SUIVI Contrats ' ?
Utilisez-vous le classeur de destination finale et peut-il y avoir des modifications de structure ou est-ce le classeur transmis au post #4 ?
Avez- vous réessayé plusieurs fois en prenant ce classeur du post #4 ?

Si vous commentez (ajoutez une apostrophe devant) dans le code de la feuille 'SUIVI Contrats ' la ligne :

MaJ_MFC

, la macro de l'ajout de ligne fonctionne t-elle correctement ?

Bref, je ne vois pas car ici et quelque soit la version, cela fonctionne, je n'arrive pas à reproduire ce bug...

À+

AL 22

Bonjour,

Alors pas mal de choses à répondre.

En effet, déjà, la version d'Excel indiquée dans mes préférences n'était pas à jour, je suis sur 2016 et non 2013, merci de me l'avoir fait remarquer.

Ensuite, en ouvrant le document au boulot, Excel étant en français, la macro fonctionne sans souci.

En revanche, ça ne copie pas le contenu des colonnes L, M, N et R, S, T, U.

Je te souhaite une agréable journée.

Bonjour,

En me relisant, je me suis rendue compte que ce n'était pas ce que j'avais demandé, en effet.

De toute manière, je suis parvenue à modifier la macro pour mieux convenir à mes besoins.

Merci beaucoup pour ce travail colossal.

Je te souhaite une agréable journée.

bonjour ciol,AL 22,Scraper,FanFan38,

il y a une chose important, toutes les MFCs se trouvent dans la ligne 1 qui est cachée. Donc si vous ajoutez encore des MFCs, il faut le faire dans cette ligne. Et surtout, ne supprimez jamais cette ligne. Puis a chaque insertation d'une ligne avec un double clicque, cette ligne des MFCs sera copiée et collée sur le reste.

Puis le reste, on peut faire cela avec un double-clicque dans une cellule de la colonne B, sans bouton.

Rechercher des sujets similaires à "macro inserer nouvelles lignes copiant contenu colonnes"