Mise en page sur VBA

tiestof -  
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Je voudrais mettre en page automatiquement les lignes qui contiennent des valeurs dans un tableau que je récupère depuis un autres fichier. En fait sur ma macro j'ai fait des copier coller entre mon fichier de départ et mon fichier de destination, mais à la fin je souhaite mettre les cellules du fichier finale sous un format identique.

Sachant que le nombre de ligne est variable à chaque fois que j'exécute ma macro. Je voudrais donc savoir comment dire dans ma macro de ne selectionner que les cellules qui contiennent des valeurs et les mettre en rouge et encadré par exemple.
. pour avoir à la fin un tableau au bon format tout en gardant les cellules vides au format normal.

Merci.


A voir également:

2 réponses

Utilisateur anonyme
 
Bonjour,

Exemple type :

Sub Couleur()

    Dim Rng As Range
    Dim Bte As Range
    
    Set Bte = ActiveSheet.UsedRange
    
    For Each Rng In Bte
        
        If (Rng.Value <> "") Then
            With Rng
                .Interior.ColorIndex = 3
                .Borders(xlEdgeLeft).LineStyle = xlContinuous
                .Borders(xlEdgeLeft).Weight = xlMedium
                .Borders(xlEdgeTop).LineStyle = xlContinuous
                .Borders(xlEdgeTop).Weight = xlMedium
                .Borders(xlEdgeBottom).LineStyle = xlContinuous
                .Borders(xlEdgeBottom).Weight = xlMedium
                .Borders(xlEdgeRight).LineStyle = xlContinuous
                .Borders(xlEdgeRight).Weight = xlMedium
            End With
        End If
        
    Next Rng
        
End Sub
'


Cdt

Lupin
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour,

petite astuce pour simplifier la lise en forme

With Rng
          .Interior.ColorIndex = 3
          .Borders.Weight = xlMedium
End With
0