MACRO suppression colonne + recopie de lignes

Bonjour

Je désespère pour réaliser une MACRO qui permettrait de supprimer des colonnes et récupérer des lignes une fois les colonnes supprimées.

voir PJ

L'idée étant de ne pas toucher à l'ongle principal et au clic sur un bouton, de permettre de choisir la semaine (valeur de la A, ex. semaine 10)

Puis en fonction des lignes qui affichent la semaine choisie, recopier les lignes sur un nouvel onglet et supprimer les colonnes E, H et J.

et le must aurait été de garder aussi par défaut la valeur de la ligne '1' qui sert d'entête.

Désolé pour cette demande complexe, je suis venu à bout de mes limites en essayant de créer cet automatisme via le bouton d'enregistrement..

Merci d'avance pour votre aide

Bonjour Addams,

Voici ce que je viens de faire en PJ. Cela répond-il à ta demande ?

Bonne soirée,

Sha'

10test-v1.xlsm (27.36 Ko)

Bonjour Addams,

Voici ce que je viens de faire en PJ. Cela répond-il à ta demande ?

Bonne soirée,

Sha'

Bonjour Sha'

Merci, c'est exactement ce que je recherchais !

Je m'imaginais quelque chose de bien plus ardue pour supprimer les colonnes et tu as trouvé la bonne parade (cacher les colonnes)..

J'ai juste omis un détail important de ma demande initiale.

Il manquait une colonne, que j'ai rajouté dans le fichier joint.

Après sélection de la semaine, il ne faudrait que reprendre les lignes qui affichent un 'O' dans la colonne L.

Peux tu m'aider ?

Aussi et secondaire, comment éviter que la mise en forme (couleur remplissage de cellule) soit recopiée ?

Merci d'avance

4test-v3.xlsm (30.50 Ko)

Hello

quelqu'un pour m'aider ?

Bonjour Addams,

Je viens de regarder et voici la macro mise à jour pour prendre en compte tes demandes.

Bonne journée

11test-v3.xlsm (28.02 Ko)

Merci Sha'

ça répond parfaitement à ce que je cherchais à faire.

pour mon savoir, peux tu me dire à quoi servent ces valeurs dans le code s'il te plait :

i = 2

j = 2

Bonjour Addams, Sharney,

Dans le code VBA de Sha', tu peux voir : .Range("A" & j)

donc la variable j sert pour un n° de ligne ; et au départ : j = 2

➯ on commence par la ligne n° 2, car c'est la première ligne de données du tableau

(la ligne n° 1 étant celle des entêtes).


Pour i = 2 c'est la même chose, avec utilisation dans ces 4 .Range :

.Range("B" & i)

.Range("A" & i)

.Range("L" & i)

.Range("A" & i, "L" & i)

Note bien qu'à chaque fois, i est toujours utilisé comme n° de ligne ;

et là aussi, on a donc commencé par la ligne n° 2.


Petite info supplémentaire :

Dans ta colonne A "Semaine", tu peux éviter les 0 ainsi :

En A2 : =SI(B2="";"";NO.SEMAINE(D2;1))

(à tirer vers le bas jusqu'en A190)

dhany

Bonjour,

Ma contribution du jour.

Pour le fun...

Cdlt.

10test-v3.xlsm (28.90 Ko)

Bonjour Jean-Eric,

Pour ta contribution du jour, j'ai pas trouvé la fente pour mettre une pièce ; alors à la place, j'ai cliqué sur le

dhany

bonsoir

j'ais modifier la macro

et j'ais fait un userform je trouve ca plus pratique

A toi de voir

A+

Maurice

15test-v4.xlsm (33.32 Ko)
Rechercher des sujets similaires à "macro suppression colonne recopie lignes"