Formater les cellules
Résolu
Bonjour,
je voudrais formater les cellules de "A" à "O" quand ma cellule"D" est pleine
je voudrais leur mettre des bordures
En macro si possible car en MFC les conditions s'effacent avec les lignes et a un moment ça coincera
j'ai fait cette macro mais elle formate la ligne dessous ou que je clique après
etc etc
End Sub
si vous voulez je mettrai un fichier exemple
merci de votre aide
je voudrais formater les cellules de "A" à "O" quand ma cellule"D" est pleine
je voudrais leur mettre des bordures
En macro si possible car en MFC les conditions s'effacent avec les lignes et a un moment ça coincera
j'ai fait cette macro mais elle formate la ligne dessous ou que je clique après
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
If Not Intersect(Target, Range("zone_format")) Is Nothing Then
Call form ' ma macro de format
End If
Application.EnableEvents = True
End Sub
Le debut de la macro
Private Sub form ()
ActiveCell.Offset(0, -3).Range("A1:O1").Select
ActiveCell.Activate
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
etc etc
End Sub
si vous voulez je mettrai un fichier exemple
merci de votre aide
34 réponses
Résumé de la discussion
Formatage des cellules de A à O lorsque la cellule D est remplie et ajout de bordures par une macro VBA est l’objectif, afin que les formats restent appliqués malgré le défilement des lignes. Plusieurs réponses évoquent l’emploi de Worksheet_Change et la désactivation des événements pour exécuter la macro, tout en ciblant la plage concernée et en évitant le décalage d’index lié au clic droit. Certains commentaires signalent des inversions de colonnes et des données qui ne se répercutent pas sur toutes les feuilles, tandis que d’autres suggèrent de partager un fichier exemple pour clarifier la mise en forme.
-
Bonjour,
Je ne vais pas plus loin et vous laisse voir ce que je trouve pour la question 2 : https://www.cjoint.com/?3EvxcfWn8t6
Le point 3 est impossible ....! -
bonjour
excusez moi alors je reprends question 1
Réponse : un clic droit où, on ne voit rien depuis ici... ?
quand on fait click droit sur un nom du listbox "client" les données se copient dans les divers textbox de droite.
question2
Réponse : 1.- quel index qui se décale ?
quand l'userform s'initialise la colonne 3 est un index de chaque nom qui doit lui etre attribué même dans le combobox "fam" si vous regardez une fois le choix changé les données de la colonne 3 ne correspondent plus a ceux du départ c'est pour cela que le decalage de noms se fait
3eme
les modif se font sur la base mais ne sont pas transmises aux autres feuilles
j ai du fermer et reouvrir le fichier 3 fois pour le voir apparaitre dans la feuille correspondante
excusez encore mais je n'ai surement pas votre logique -
Bonjour,
Je constate que vous avez l'art de ne jamais répondre exactement aux commentaires mais vous ajouter toujours d'autres problèmes qui sont incompréhensible pour la personne qui n'est pas à l'origine de l'application.
Je regrette, je veux bien aider le mieux possible mais certainement pas de cette manière.
-
Bonjour,
Je viens de regarder en fait ça fonctionne pas bien car quand on fait le clic droit les noms sont décalés
Réponse : un clic droit où, on ne voit rien depuis ici... ?
Car d'après ce que je comprends l'index se décale car on ne garde pas l'index de départ non?
Réponse : 1.- quel index qui se décale ?
2.-c'est votre application est c'est vous qui savez ce que vous devez avoir comme résultat... !
Autre chose que je remarque si j'ajoute un nom dans les feuilles j'ouvre l'userform et le nom apparait si je ferme et enregistre le fichier
a la prochaine ouverture le nom disparait
Réponse : rien de plus normal car les données de bases sont en feuille [Clients] donc les modifications doivent se faire sur base Oui / Non
-
oui mais même en rajoutant un Nom dans le feuille [clients] ça se recopie pas dans la feuille correspondante (en fait ca se copie a la 3eme ouverture) après controle
si vous regardez a l'initialisation de l'userform en fesant un clic droit sur le nom les données sont inscrites a droite
et des qu'on change la valeur dans le combobox "fam" on perd cette possibilité
-
-
Bonjour,
J'ai corrigé le problème : normalement si vous regardez quand on change de feuille ca modifie la feuille du meme nom "EST,OUEST,SUD" et le soucis majeur vient de la car je n'arrive pas a remettre chaque colonne a sa place car je voudrais garder la structure initiale de la feuille "Clients".
Il me semble que là c'est correct Oui Ou non ?
-
Bonjour
c'est a dire "gentilles surprises...... ! "?
j'avais deja pas mal épuré
je viens de regarder en fait ça fonctionne pas bien car quand on fait le clic droit les noms sont décalés
car d"apres ce que je comprends l'index se decale car on ne garde pas l'index de depart non?
autre chose que je remarque si j"ajoute un nom dans les feuilles j ouvre l'userform et le nom apparait si je ferme et enregistre le fichier
a la prochaine ouverture le nom disparait
Slts A bientôt
Surplus -
Bonjour,
J'espère que cela va fonctionner sans surprise.
Votre fichier : https://www.cjoint.com/?3EvqoAiaKWw
Je vous conseille de sérieusement faire le ménage dans les modules, j'ai eu quelques gentilles surprises...... !
-
Bonjour,
J'espère que cela va fonctionner sans surprise.
Votre fichier : https://www.cjoint.com/?3EvqoAiaKWw
Je vous conseille de sérieusement faire le ménage dans les modules, j'ai eu quelques gentilles surprises...... !
-
Bonjour,
Vous pouvez chercher longtemps, et surtout avec du code bricolé... ! Sans tenir compte des procédures qui apparemment non rien à y faire... !
J'ai mis le doigt sur une incohérence entre les données pour la liste client du formulaire et celle pour la feuille extrait des clients selon région ou vous appliquez la même source au deux ce qui n'est pas correct car l'une à 3 colonnes et l'autre 17.
Je regarde demain comment corriger cela sans tout massacré.
Note : attention, ce n'est pas le code de f894009 (salutations)il est parfait.
-
Re,
j'ai regardé dans mes post en fait c'est "f894009" qui a pondu ce code
dans ce post
https://forums.commentcamarche.net/forum/affich-26627688-copier-donnees-d-une-listbox-vers-page -
Bonjour
c'est vrai que moi je ne trouve pas la solution depuis 4 j mais j'ai pas les mêmes connaissances évidement que vous -
Bonjour,
C'est très gentil de votre part, je l'ai déjà trouvé mais par contre la personne qui à réaliser ce code à vraiment chercher à ce que ce soit introuvable ou alors c'est du rafistolage... !
-
bonjour
en fait le code d'apres ce que j'ai travaillé dessus c'est que dans la 3 eme colonne il y a un index de chaque nom ce qui permet de faire le click droit comme a l'initialisation de l'userform.
Ce que j'essayais de faire c'est de mettre la colonne 4 et 5 en 1er dans le listbox.
le fichier fonctionne bien si le nom et prénoms sont en colonne 1 et 2 -
Bonjour,
Non merci mais plutôt celui qui a généré le code... !
-
Bonjour
vous voulez le fichier original? -
Bonjour,
Merci, dans ce cas je vais voir si je trouve dans les diverses procédures ou se trouve l'origine du problème.
-
Bonjour
je l'ai trouvé dans un autre fichier de gestion de stock
je me rappelle plus ou mais j'ai l'original dans une clef -
Bonjour,
Merci, et qui est à l'origine de cette macro ... !
-
Bonjour,
A première vue il y a une inversion des colonnes [A : B] et [D : E] pour les feuilles [EST,OUEST,SUD].... !
Pouvez-vous m'indiquer depuis quel formulaire vous gérez les feuilles... ?
-
Bonjour,
Merci pour le fichier, je vais regarder, patience.
- 1
- 2
Suivant