Cadrage gauche ou droite

Comanche77

XLDnaute Nouveau
Bonjour à tous ,
Je suis trésorier en association , je gère ma compta par excel , dans une colonne je mets mes numéros de pièce comptable : D001 pour une dépense , R002 pour une recette , T003 pour un transfert , C004 pour une caution.

J'aimerai dans le cas d'une dépenses cadrer à gauche et mettre un fond violet , dans le cas d'une recette cadrer à droite et mettre un fond bleu , pour les pièces en T ou C, rester au centre avec fond jaune ou vert .
Cela vous paraitra simple ais pas pour moi !
Merci pour votre aide
J-René :)

la pièce jointe serait le résultat final
merci
 

Pièces jointes

  • Cadrage.xlsx
    9 KB · Affichages: 41
  • Cadrage.xlsx
    9 KB · Affichages: 45
  • Cadrage.xlsx
    9 KB · Affichages: 44

Modeste

XLDnaute Barbatruc
Re : Cadrage gauche ou droite

Bonjour comanche77 et bienvenue,

Les Mises en Forme Conditionnelles permettraient de répondre à ta demande, au niveau des couleurs. Malheureusement, à ma connaissance, on ne peut modifier l'alignement, dans ce cadre.

Comme je m'en voudrais de laisser un premier message sans réponse, une proposition par macro en annexe: c'est le changement de valeur en colonne B qui déclenche l'exécution du code (pour voir ce dernier, clic droit sur l'onglet de la feuille --> Visualiser le code)
... Tu verras bien si tes envies d'alignements valent l'effort de te lancer dans le VBA :D
 

Pièces jointes

  • Couleur et cadrage (comanche77).xlsm
    15.6 KB · Affichages: 36

Comanche77

XLDnaute Nouveau
Re : Cadrage gauche ou droite

Hello , je reviens vers toi Modeste car je peine.
Dans ma fonction de trésorier , j'ai repris un développement excel qui fonctionne depuis moult années, et j'essaie d'y apporter quelques améliorations.
Dans cet Excel il y des macros et j'aurai aimé insérer ta proposition pour mon problème dans la macro qui s'y exécute.
Dans le code j'y ai trouvé ceci sur les zones ou j'aimerai y appliquer le cadrage et qui semble déjà y appliquer les couleurs de fond
J'espére que tu pourras m'aider sans que cela ne te prenne trop de temps Merci d'avance:)
je te mets la totalité du module en pièce jointe

Extrait:
1:
Range(target.Address).Select
cible = target.Address


W = Left(Intersection.Value, 1) 'on vérifie que le numéro de pièce comptable comprend bien une lettre au début

If W = "D" Then ActiveCell.Interior.ColorIndex = 38
If W = "R" Then ActiveCell.Interior.ColorIndex = 8
If W = "T" Then ActiveCell.Interior.ColorIndex = 6
If W = "C" Then ActiveCell.Interior.ColorIndex = 4

If W <> "D" Then
If W <> "R" Then
If W <> "T" Then
If W <> "C" Then
MsgBox ("Votre pièce comptable doit commencer par D, T, R ou C" & vbCrLf & "Par exemple D006"), vbOKCancel, "Erreur de saisie"

Range(cible).Select
 

Pièces jointes

  • Module.docx
    14.7 KB · Affichages: 23

JCGL

XLDnaute Barbatruc
Re : Cadrage gauche ou droite

Bonjour à tous,
Salut mon Luc,

Pour le plaisir de tenter d'assurer le SAV de mon Luc, peux-tu essayer avec :

VB:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column <> 2 Then Exit Sub

    Select Case Left(Target, 1)
    Case "T"
        Target.Interior.ColorIndex = 6
        Target.HorizontalAlignment = xlCenter
    Case "D"
        Target.Interior.ColorIndex = 38
        Target.HorizontalAlignment = xlRight
    Case "R"
        Target.Interior.ColorIndex = 8
        Target.HorizontalAlignment = xlLeft
    Case "C"
        Target.Interior.ColorIndex = 4
        Target.HorizontalAlignment = xlCenter
    Case Else
        Target.Interior.ColorIndex = xlNone
        Target.HorizontalAlignment = 1
        MsgBox ("Votre pièce comptable doit commencer par D, T, R ou C" & vbCrLf & "Par exemple D006"), vbOKCancel, "Erreur de saisie"
        Target.Select
    End Select
End Sub

A+++ mon Luc
A+ à tous
 

Modeste

XLDnaute Barbatruc
Re : Cadrage gauche ou droite

Bonjour mon JC, ton Comanche, son forum,

JCGL à dit:
Pour le plaisir de tenter d'assurer le SAV de mon Luc, peux-tu essayer avec :
Dis Jean-Claude, ne te fais pas plus modeste que je ne le suis :): je suis positivement honoré que tu aies pris le relais :D

Ceci étant, si la macro complète fonctionne, c'est tant mieux ... mais il y a quelques "longueurs", me semble-t-il!?


Bises aux Huns, signaux de fumée à qui pourra les déchiffrer et cordiales salutations à tous les autres.
 

Comanche77

XLDnaute Nouveau
Re : Cadrage gauche ou droite

La macro date malheureusement et le géniteur n'est plus de ce monde.

J'essaie tant bien que mal à poursuivre en ayant repris au vol mais je suis preneur de tout conseil .

merci à vous pour votre aide actuelle et future.

Jean-René

:)
 

chris

XLDnaute Barbatruc
Re : Cadrage gauche ou droite

Bonjour

Une solution par MFC avec création préalable de 2 formats de nombre
@ *
* @

et un centrage des données de la colonne

La mise sous forme de tableau permettrait le propagation automatique de la MFC...
 

Pièces jointes

  • Cadrage.xlsx
    9.7 KB · Affichages: 45
  • Cadrage.xlsx
    9.7 KB · Affichages: 50
  • Cadrage.xlsx
    9.7 KB · Affichages: 49

Comanche77

XLDnaute Nouveau
Re : Cadrage gauche ou droite

Mazette , de mieux en mieux sauf que que je pédale dans le création du format personnalisé et pourtant y a de la prose sur le net !

Une petite aide peut-être mais néanmoins je vais continuer à chercher

Si je pouvais ôter de la macro tout se qui pourrait se faire aussi simple !

merci encore :)
 

tototiti2008

XLDnaute Barbatruc
Re : Cadrage gauche ou droite

Bonsoir Commanche,

format "@* " (ne pas oublier l'espace à la fin) : aligné à gauche
format "* @" (ne pas oublier l'espace au milieu): aligné à droite
Je ne connaissais pas avant l'exemple de Chris, merci Chris :)
 
Dernière édition:

chris

XLDnaute Barbatruc
Re : Cadrage gauche ou droite

Re

Merci Tototiti : j'avais mal recopié le 1er format (qui heureusement était OK das le fichier joint).

A noter que l'ajout, depuis la version 2007, des formats de nombre démultiplie les possibilités des MFC...
 

Modeste

XLDnaute Barbatruc
Re : Cadrage gauche ou droite

Bonjour tout le monde,

Je ne peux qu'abonder dans le sens des remerciements à adresser à chris, pour ces formats personnalisés (heureusement que j'étais resté prudent dans mon premier message! :))

Dans le droit fil de: "Si je pouvais ôter de la macro tout se qui pourrait se faire de manière aussi simple", on peut vérifier la présence d'un des 4 caractères souhaités dans le n° de pièce avec une Validation (me semble-t-il ;))

Un essai en pièce jointe, appliqué à la plage B2:B30. Voir Données > Validation des données > Personnalisé >
Formule: "=OU(GAUCHE($B2)="T";GAUCHE($B2)="D";GAUCHE($B2)="C";GAUCHE($B2)="R")"
 

Pièces jointes

  • Validation (comanche77).xlsx
    9.9 KB · Affichages: 21

Comanche77

XLDnaute Nouveau
Re : Cadrage gauche ou droite

Oui bien reçu
mais il me faut conserver le test d'erreur sur saisie de caractères non valable
donc passer par la macro pour ce test ?
et faire le reste par la mise en forme conditionnelle

qu'en pensez-vous ?

à bientôt et toujours merci

j'avance j'avance , je vais pouvoir fournir un squelette:) de fichier amélioré à mes trésoriers dans l' association
merci pour eux
 

Statistiques des forums

Discussions
312 361
Messages
2 087 599
Membres
103 604
dernier inscrit
CAROETALEX59