Appliquer un format automatiquement

gerard55

XLDnaute Occasionnel
Bonjour à tous,
J'ai besoin de votre aide pour appliquer un format à certaines cellules.
J'importe un fichier d'un logiciel. Dans une Zone C2:H25 les cellules sont quasiment toutes remplies de codes. Je voudrais que pour certains code contenus dans ces cellules (CP REM ST-S *S* ) les cellules se colorent automatiquement en jaune ou pour certain j'appliquerai un format spécifique.
Je ne peux pas mettre un format conditionnel puisqu'à chaque importation ça change de fichier. ça ne peut être qu'une macro (dans les macros personnelles) que je lance après chaque importation.
J'espère avoir été clair
Merci pour vos suggestions
Gérard
 

eriiic

XLDnaute Barbatruc
Re : Appliquer un format automatiquement

Bonjour à tous,

une proposition qui s'applique sur la feuille active de n'importe que classeur ouvert.
Ctrl+m pour lancer la macro
Je pense que c'est mieux d'ouvrir ce classeur quand tu en as besoin plutôt que la macro soit disponible en permanence (.xla ou autre..)

eric
 

Pièces jointes

  • Classeur3.xlsm
    19.1 KB · Affichages: 57
  • Classeur3.xlsm
    19.1 KB · Affichages: 53
  • Classeur3.xlsm
    19.1 KB · Affichages: 68

xhudi69

XLDnaute Accro
Re : Appliquer un format automatiquement

Bonsoir tout le monde

I wish you an happy christmass

imagesCA7KLF7C.jpg

@+
 

gerard55

XLDnaute Occasionnel
Re : Appliquer un format automatiquement

Bonjour, hxudi69
Je reprends mon travail sur tes conseils mais, quand le colle le fichier la macro beugue sur la ligne:
Select Case Target.Value
ci_dessous l'ensemble du code
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Not Intersect(Target, Range("A1:Z500")) Is Nothing Then
With Target
Select Case Target.Value
Case Is = "CP"
.Interior.ColorIndex = 6
Case Is = "REM"
.Interior.ColorIndex = 6
Case Is = "ST-S"
.Interior.ColorIndex = 6
End Select
End With
End If
End Sub

C'est quoi l'enregistrement au format SAVE AS. Je ne vois pas ce format
Merci d'avance
A+
Gérard
 

xhudi69

XLDnaute Accro
Re : Appliquer un format automatiquement

Bonjour gerard55, le Forum

Bonnes fêtes de fin d'année :cool:

essaie ce code:
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim cel As Range
On Error Resume Next
    For Each cel In Range("A1:Z100")
        If cel.Value = "REM" Or cel.Value = "CP" Or cel.Value = "ST-S" Then
            cel.Interior.ColorIndex = 6
        End If
    Next cel
End Sub

C'est quoi l'enregistrement au format SAVE AS. Je ne vois pas ce format

Save as veut dire "enregistrer sous" je l'ai mis car certain XLDnautes utilisent des versions anglo-saxonnes.

@+
 
Dernière édition:

gerard55

XLDnaute Occasionnel
Re : Appliquer un format automatiquement

Bonjour,
Je poursuis mon travail de mise en forme automatique. J'ai créé une petite macro qui me conviendrait avec CASE mais, alors que le texte dans chaque cellule semble identique puisqu'il est issu d'un logiciel de planning, parfois ça met bien les couleurs alors que sur certaines cellules ça ne réagit pas. Ce n'est donc pas fiable.
Le code que tu as proposé xhudi69 nécessite de retapper le code dans la cellule pour que la cellule change de couleur.
l'enregistrement sous ("save as") c'est quoi ? Je joins ci-dessous la macro. Il faudrait qu'elle soit moins sélective. Peut-être le code contient-il des erreurs ?
Sub PlanningFormat()
Dim x As Variant
Sheets("JANV").Select
For Each x In Sheets("JANV").Range(Sheets("JANV").Range("b6"), Sheets("JANV").Range("f35").End(xlUp))
With x

Select Case x
Case [H1] 'CP
.Interior.ColorIndex = 6
Case [H2] 'ST-S
.Interior.ColorIndex = 6
Case [H3] 'REC
.Interior.ColorIndex = 6
Case [H4] '*C*
.Interior.ColorIndex = 10

End Select
End With
Next
End Sub
Merci pour vos conseils
a+
Gérard
 

xhudi69

XLDnaute Accro
Re : Appliquer un format automatiquement

Bonjour gerard55, le Forum,

je ne comprends pas, si tu mets le code ci-dessous à la bonne place et que tu importe ou copie/colle une nouvelle feuille, les cellules se mettent au jaune.
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
 Dim cel As Range
 On Error Resume Next
     For Each cel In Range("A1:Z100")
         If cel.Value = "REM" Or cel.Value = "CP" Or cel.Value = "ST-S" Then
             cel.Interior.ColorIndex = 6
         End If
     Next cel
 End Sub
Il n'y a pas à retapper quoi que se soit.

Je regarde ton code et reviens vers toi.

@+
 

xhudi69

XLDnaute Accro
Re : Appliquer un format automatiquement

Re bonjour,

ci-dessous ton code remanié:
Code:
Sub PlanningFormat()
 Dim x As Range
 With Sheets("JANV")
    For Each x In Sheets("JANV").Range("B6:F35")
        With x

            Select Case x
            Case [H1] 'CP
            .Interior.ColorIndex = 6
            Case [H2] 'ST-S
            .Interior.ColorIndex = 6
            Case [H3] 'REC
            .Interior.ColorIndex = 6
            Case [H4] '*C*
            .Interior.ColorIndex = 10

            End Select
        End With
    Next
End With
 End Sub

Je persiste à dire que mon dernier code fonctionne.
Pour ton code, il faut le mettre dans l'évènement:
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

@+
 

gerard55

XLDnaute Occasionnel
Re : Appliquer un format automatiquement

Bonjour xhudy69 et Eriiiic
Chacune de vos propositions sont intéressantes mais, chacune arrive au même résultat, certains code ne sont pas pris en compte.
Je joins mon fichier sur lequel je fais des essais. Les 3 macros sont dedans.
Les codes écrits sont ceux du logiciel de planning.
Merci d'avance pour ce temps consacré
A+
Gérard
 

Pièces jointes

  • gerard55_bis.xlsm
    23.3 KB · Affichages: 33
  • gerard55_bis.xlsm
    23.3 KB · Affichages: 35
  • gerard55_bis.xlsm
    23.3 KB · Affichages: 28

xhudi69

XLDnaute Accro
Re : Appliquer un format automatiquement

Re gerard55, le Forum,

Bizarre comme c'est étrange, en PJ ton fichier, peux-tu supprimer la première feuille et refaire un import, fais-moi un retour.

@+
 

Pièces jointes

  • gerard55_Ter.xlsm
    21.6 KB · Affichages: 37
  • gerard55_Ter.xlsm
    21.6 KB · Affichages: 34
  • gerard55_Ter.xlsm
    21.6 KB · Affichages: 34

xhudi69

XLDnaute Accro
Re : Appliquer un format automatiquement

Bonjour gerard, le Forum,

Vois le fchier joint où j'ai fait un import dans l'onglet du même nom (tout OK), il semblerait qu'il y ai un problème à l'import colonne "C" et "E", alors que si j'importe d'un autre fichier excel vers celui-ci, tout se passe bien.

@+ :cool:
 

Pièces jointes

  • gerard55_Ter.xlsm
    28.2 KB · Affichages: 28
  • gerard55_Ter.xlsm
    28.2 KB · Affichages: 36
  • gerard55_Ter.xlsm
    28.2 KB · Affichages: 39

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote