Décaler vers la gauche ensemble de cellules de façon conditionnelle
gougouks
Messages postés
9
Statut
Membre
-
gougouks -
gougouks -
Bonjour à tous,
Je sollicite votre aide car je ne maîtrise pas du tout VBA et que c'est surement grâce à VBA que mon problème sera résolu.
L'illustration de mon problème est le suivant:

Avant le second tableau, je demande le nombre de personne (il peut y en avoir au plus 2).
Ce que je veux est: Si la cellule B9 contient 1 (donc 1personne) alors:
--->Supprimer/masquer UNIQUEMENT les cellules C10 à C16 qui concernent la personne 2;
--->Décaler la plage de cellules D10:H16 vers la gauche (c'est à dire remplacer/prendre la place des cellules C10 à C16.
--->Garder la mise en forme de la plage de cellule à décaler.
Comme il y a des tableaux au-dessus et en dessous du tableau concerné par les modifications, une suppression de la colonne C n'est pas à envisager.
J'espère avoir été claire dans la description de mon problème.
Merci beaucoup par avance :D
Je sollicite votre aide car je ne maîtrise pas du tout VBA et que c'est surement grâce à VBA que mon problème sera résolu.
L'illustration de mon problème est le suivant:
Avant le second tableau, je demande le nombre de personne (il peut y en avoir au plus 2).
Ce que je veux est: Si la cellule B9 contient 1 (donc 1personne) alors:
--->Supprimer/masquer UNIQUEMENT les cellules C10 à C16 qui concernent la personne 2;
--->Décaler la plage de cellules D10:H16 vers la gauche (c'est à dire remplacer/prendre la place des cellules C10 à C16.
--->Garder la mise en forme de la plage de cellule à décaler.
Comme il y a des tableaux au-dessus et en dessous du tableau concerné par les modifications, une suppression de la colonne C n'est pas à envisager.
J'espère avoir été claire dans la description de mon problème.
Merci beaucoup par avance :D
A voir également:
- Excel décaler cellule vers la gauche
- Liste déroulante excel - Guide
- Excel cellule couleur si condition texte - Guide
- Proteger cellule excel - Guide
- Windows 11 barre des taches a gauche - Guide
- Aller à la ligne dans une cellule excel - Guide
2 réponses
Si aucun "pro" du VBA ne te répond je te ferais un truc ce soir, même si c'est pas très orthodoxe :p (Je me débrouille mais c'est pas forcément très "propre" :p)
gougouks
Messages postés
9
Statut
Membre
Se sera toujours mieux que rien :D
Désolé pas eu le temps hier, voici un fichier fonctionnel, le VBA est à adapter selon les tailles de tes tableau. (Je t'expliquerai comment faire si tu veux)
https://we.tl/t-jUIigsSp05
https://we.tl/t-jUIigsSp05
Merci pour ton aide :D
Juste pour être sure de bien comprendre:
La première partie dit:
Si la valeur en B9 = Nombre de personne est 1 alors ne pas mettre à jour.
___Par contre si B9 etait à 2 personnes et qu'il n'y a plus qu'1 personne alors sélectionner et couper la colonne Personne 2 pour la coller dans la Feuil2 sur la cellule B2.
___Sur la Feuil1, avancer d'une colonne la plage col1, col2, col3 et col4 en la sélectionnant et la collant sur sa nouvelle place Range("C10:F18")
___Sur la Feuil2, la cellule G2 prend la valeur 1
Et l'inverse pour le deuxième if:
On part de 1 personne et finalement il a 2 personnes alors on doit insérer la colonne Personne 2 et décaler la plage de cellules col1, col2, col3 et col4 vers la droite en copiant et collant la cellule sur la nouvelle place voulue.
Ai-je bien tout compris?
Juste pour être sure de bien comprendre:
La première partie dit:
Si la valeur en B9 = Nombre de personne est 1 alors ne pas mettre à jour.
___Par contre si B9 etait à 2 personnes et qu'il n'y a plus qu'1 personne alors sélectionner et couper la colonne Personne 2 pour la coller dans la Feuil2 sur la cellule B2.
___Sur la Feuil1, avancer d'une colonne la plage col1, col2, col3 et col4 en la sélectionnant et la collant sur sa nouvelle place Range("C10:F18")
___Sur la Feuil2, la cellule G2 prend la valeur 1
Et l'inverse pour le deuxième if:
On part de 1 personne et finalement il a 2 personnes alors on doit insérer la colonne Personne 2 et décaler la plage de cellules col1, col2, col3 et col4 vers la droite en copiant et collant la cellule sur la nouvelle place voulue.
Ai-je bien tout compris?