Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 mise en forme conditionnelle, mais pas que...!!!

JPh2309

XLDnaute Junior
Bonjour,
J'ai cherché dans les différentes discussions mais les exemples trouvés bien qu'intéressants, ne collaient pas à mon cas.
À partir d'une macro de saisie dans la feuille 1, j'incrémente un tableau dans la feuille 2. Jusque là c'est rudimentaire pour vous mais je suis fier d'avoir réussi seul, ça fonctionne !
Là où ça se complique, c'est que je n'arrive pas à faire une mise en forme conditionnelle qui s'applique à un tableau qui évolue à chaque nouvelle entrée.
De plus, dans ce tableau j'ai une liste déroulante que je n'arrive pas à proposer aux nouvelles cellules ajoutées.
J'ai mis des commentaires dans mon fichier test pour vous aider à comprendre ma problématique.
Merci de votre aide !
 

Pièces jointes

  • saisie test.xlsm
    41.1 KB · Affichages: 10

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Jph, Sousou,
Un essai en PJ avec :
VB:
Sub CopyPaste()
    N = [Tableau1].ListObject.ListRows.Count
    If N > 1 Or [Tableau1].Item(1, 1) <> "" Then
        [Tableau1].ListObject.ListRows.Add: N = N + 1
    End If
    [Tableau1].Item(N, 1) = [D5]: [Tableau1].Item(N, 2) = [E5]
    [D5:E5].ClearContents
End Sub
et comme le dit Sousou, un tableau structuré, ça simplifie la vie car cela propage formule et mise en forme automatiquement lorsque des lignes sont ajoutées.
 

Pièces jointes

  • saisie test (1).xlsm
    42.1 KB · Affichages: 5

JPh2309

XLDnaute Junior
Merci pour cette belle citation de Boileau mais j'ai fait ce petit fichier, juste pour l'exemple.
En pièce jointe, le fichier original dans lequel j'ai enlevé par dépit les listes déroulantes, je suis pas sûr que ça t'aide plus...
 

Pièces jointes

  • testJPG-2.xlsm
    135.6 KB · Affichages: 6

JPh2309

XLDnaute Junior
Merci Sylvanu.
Je n'ai pas les compétences pour structurer de manière plus efficace mon tableau et je le regrette.
J'ai compris que ta macro remplace la mienne lors de la saisie. je vais tenter de la comprendre à froid pour la reproduire. Mais pour la mise en forme conditionnelle, tu peux m'aider stp ?
 

JPh2309

XLDnaute Junior
???
Est ce qu'au moins la solution du post #3 donne la solution attendue ?
Et ensuite pourquoi refournir une PJ totalement différente ? Quel intérêt ?
Pour montrer à Sousou que je n'avais que ça à fournir au regard de mon niveau de compétences avec Excel et que je pensais que mon fichier exemple était suffisant (ce que tu m'as confirmé)
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Je repose les questions :
1-
Est ce qu'au moins la solution du post #3 donne la solution attendue ?
2-
Dans le nouveau fichier il n'y a pas de case "oui".
Donc quelle est la nouvelle MFC ? Qui la déclenche ? Quelles colonnes doivent être barrées ?
Dans le nouveau fichier il n'y a pas de colonne F exploitable puisque fusionnée.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Alors au pif, une dernière PJ.
J'ai supprimé toutes ces cellules fusionnées pour en faire un tableau structuré.
Je barre la ligne quand le Statut est au stade "Terminé"
A vous de fignoler.
 

Pièces jointes

  • testJPG-2.xlsm
    96.3 KB · Affichages: 7

job75

XLDnaute Barbatruc
Bonjour,

Le format "barré" ne peut pas être appliqué par MFC.

Un tableau structuré n'apporte rien de plus ici, voyez le fichier joint et utilisez cette macro :
VB:
Sub saisie()
With Sheets("Feuil2").[C4:F4]
    .Insert xlDown, xlFormatFromRightOrBelow 'formats du dessous
    .Rows(0).Resize(, 2) = [D5:E5].Value
End With
End Sub
La liste de validation en colonne F est copiée.

Et pour créer le format "barré" cette macro dans le code de Feuil2 :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
With Range("F4:F" & Cells.SpecialCells(xlCellTypeLastCell).Row)
    If Intersect(Target, Cells) Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    .Columns(-2).Resize(, 3).Font.Strikethrough = False 'RAZ
    For Each c In .Cells
        If LCase(c) = "oui" Then c(1, -2).Resize(, 3).Font.Strikethrough = True
    Next
End With
End Sub

A+
 

Pièces jointes

  • saisie test(1).xlsm
    43.9 KB · Affichages: 6

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Tout comme le camarade sylvanu j'étais parti sur un TS, mais comme l'a magnifiquement montré job75 c'est effectivement sans grand intérêt (si ce n'est éventuellement pour avoir facilement une alternance de deux couleurs de lignes).

Du coup ça m'a donné quasiment le même résultat que sylvanu, mais vu que je l'ai fait, je le poste tout de même en pièce jointe.
 

Pièces jointes

  • testJPG-2_(TooFatBoy-v1).xlsm
    136.7 KB · Affichages: 4
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…