Cherche code VBA spécifique

Cedric -  
 Cedric -

Bonjour,

Je souhaites trouver une macro pour mon classeur Excel pour faire la chose suivante dans un tableur qui comporte les colonnes de A à BF en commençant à la ligne 7 ( important ):

Si colonne de AK à AP non vide, insérer une ligne en dessous et copier de A à AD intégralement et copier dans la nouvelle ligne les colonne AK à AP a la place de AE à AJ. ( espérant avoir été clair )

Idem si AQ à AV non vide insérer une ligne en dessous et copier de A à AD intégralement et copier dans la nouvelle ligne les colonne AQ à AV a la place de AE à AJ. ( espérant avoir été clair )

Idem si AW à BB non vide insérer une ligne en dessous et copier de A à AD intégralement et copier dans la nouvelle ligne les colonne AW à BB a la place de AE à AJ. ( espérant avoir été clair )

Le but est que tout ce qui se trouve entre Ak et BB se retrouve seulement sur la plage AE à AJ


Windows / Chrome 124.0.0.0

A voir également:

33 réponses

mariam-j Messages postés 1811 Date d'inscription   Statut Membre Dernière intervention   44
 

Bonjour,

C'est clair, mais avec un fichier exemple ça le serait mieux-->:  https://www.cjoint.com/

Remmener le lien généré.

Les experts pourront alors travailler sur ton fichier, car ils vont êtres réticent à en créer un.

1
Cedric
 

Bonjour,

CI joint mon classeur

https://www.cjoint.com/c/NExjqjNOkPb

J'ai oubliais d'apporter une précision, toute les lignes qui vont se rajouter devront également se rajouter sur les autres onglet

0
Le Pingou Messages postés 12640 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 

Bonjour,

Eh bien c'est pas clair du tout, il serait plus profitable de mettre manuellement 2 ou 3 exemples sur votre fichier..!


0
Cedric
 

Bonjour Le Pingou,

Ci joint https://www.cjoint.com/c/NExj6Aoxerb ou j'ai fait en manuel ce que je voudrais que la macro fasse ( j'ai seulement traiter de la ligne 7 à 27 pour exemple )

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Cedric
 

Re Bonjour,,

Pour être plus clair, voici le fichier de départ :

https://www.cjoint.com/c/NExk0NFE3Hb

Et après la macro, celui ci devra être comme cela :

https://www.cjoint.com/c/NExk1tfkeVb

Merci de votre aide

0
Le Pingou Messages postés 12640 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 

Bonjour,

Désolé mais le lien ne fonctionne pas...?


0
Cedric
 

Voici le premier lien

https://www.cjoint.com/c/NExk0NFE3Hb

0
Cedric
 

Et voici le second lien :

https://www.cjoint.com/c/NExk1tfkeVb

0
Cedric
 

Je viens de les tester en les copier sur une page web et ils fonctionnent

0
Le Pingou Messages postés 12640 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 

Bonjour,

Précision , je faisais référence au lien du poste 4.

De plus vous dite ceci : 

Si colonne de AK à AP non vide, insérer une ligne en dessous et copier de A à AD intégralement et copier dans la nouvelle ligne les colonne AK à AP a la place de AE à AJ. ( espérant avoir été clair )

De quelle feuille il s'agit.... introuvable dans votre exemple...!


0
Cedric
 

Oui j'ai supprimer le lien du post 4 , j'ai voulu faire plus simple donc il faut prendre les derniers liens publiés.

Tu prends "fichier de départ ", là on voit que les colonnes de AK à BB sont incrémenté. et si tu prends "fichier à obtenir au final" tu vois que ces valeurs ont été recopié dans un nouvelle ligne et déplacé en colonne de AE à AJ.

Ces modifications doivent être effective sur chaque onglet de mon classeur.

T'en remerciant par avance

0
Le Pingou Messages postés 12640 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 

Bonjour,

Encore une fois à quelle feuille vous faite référence...!


0
Cedric
 

Je fais référence à la feuille " Extraction à copier ici " mais les modification apportées par la macro devront être effective sur les 4 onglets

0
Le Pingou Messages postés 12640 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 

Bonjour,

A force de comparaison je déduis ceci :

Par exemple sur la feuille ‘Extraction à copier ici’ pour la ligne 9 les cellules AK9 :AP9 ou AQ9 :AV9 ou AW9 :BB9 ne sont pas vide donc on insère une ligne au-dessous en dupliquant les valeurs A9 :AD9 et les valeurs AK9 :AP9 ou AQ9 :AV9 ou AW9 :BB9  dans la plage AE10 :AJ10

Les feuilles ‘Préparation" BASE NEW " et  ‘A copier dans "BASE NEW" sont traitées de la même manière.

Est-ce correct ?


0
Cedric
 

Oui c'est bien ce que je recherche a faire via une macro

0
Le Pingou Messages postés 12640 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 

Bonjour,

Ok , patience.


0
Cedric
 

Merci à toi

0
Le Pingou Messages postés 12640 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 

Bonjour,

J’ai préparé le code pour la feuille ‘Extraction à copier ici ‘, je vous contrôler si c’est conforme à vos besoins. Déclencher la macro via [Clic moi.]

Je finaliserai selon votre retour.

Le fichier : https://www.cjoint.com/c/NExupWUJP1Z


0
Cedric
 

Bonjour le Pingou,

Tout d'abord je vous remercie de votre travail.

J'ai constaté que la Macro ne traite pas toute les lignes en une seule fois, je suis obligé de cliquer sur le bouton de la macro plusieurs fois afin que tout le tableau soit traiter. ( généralement j'ai environ 200 lignes ) . Je crois qu'il faudrait faire une "boucle" mais je ne maîtrise pas cela !

Ensuite il faudrait que l'onglet " extraction à copier ici " se recopie dans l'onglet " préparation Base New "( attention certaine colonne sont supprimer ), l'onglet " A copier dans BASE NEW " ( attention certaine colonne sont supprimer ) et dans l'onglet " Transition don't USE"

Ensuite est -il possible de modifier via la macro la colonne I ( Telephone ) et la colonne K ( FAX ) de la façon suivante :Si

Si cellule est vide, mettre 00 00 00 00 00

Si cellule contient un numéro sous forme 470989934 la mettre sous forme 04 70 98 99 34

Si cellule sous forme 04.70.98.99.34 la mettre sous forme 04 70 98 99 34

Si cellule sous forme 04 92 30 98 79POSTE 52882 la mettre sous forme 04 92 30 98 79

Si cellule sous forme 04 72 45 03 70 / 06 88 20 17 18 la mettre sous forme 04 72 45 03 70

Et si cellule sous forme 0472450370/0688201718 la mettre sous forme 04 72 45 03 70

Merci par avance.

0
Le Pingou Messages postés 12640 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 

Bonjour,

Dans un premier temps j’ai créé une plage avec 64 lignes et j’ai lancer la macro et j’obtiens, sans cliquer sur le bouton de la macro plusieurs fois, une nouvelle plage avec 92 lignes.

Voir le fichier : https://www.cjoint.com/c/NEyi7MuG8XZ

Dans votre cas pouvez-vous expliquer exactement ce que vous avez réalisé… !


0