Problème de bordures

bonjour a vous tous

j'ai trouvé un code pour bordure sur le net que j'ai essayer de modifier mais sans succès, je vous le fichier exemple qui vous montre le résultat du code trouvé en feuil1 et en feuille2 ce que je voudrais

ce code est censé créer les bordures autour des lignes qui sont écrites à partir de la ligne 18

Pascal

Salut,

Je n’ai pas vu tout de suite que tu avais mis le modèle désiré sur la feuille 2. Je te présente donc mon fichier avec quelques exemples de mises en forme de bordure et je pense que tu devrais arriver à reproduire cela pour ton besoin. Comme sur ton modèle tu as encore déplacé des textes, etc., je n’ai pas trop l’envie de recommencer une quatrième mise en forme

Cordialement.

19essai-print-v1.xlsm (30.70 Ko)

bonsoir Yvouille

merci pour tes boutons exemples qui font tous les 3 les mêmes bordures, le code qui est sur le fichier joint et qui ne mets pas les bordures comme sur la feuille2 est celui qu'il faut modifier car je ne sais pas a l'avance combien de ligne seront écritent avant de faire les bordures car le code recherche la dernière ligne et colonne avant de faire les bordures

With Sheets("feuil1")
   If Not IsEmpty(.UsedRange) Then
       DerLig = .Cells.Find("*", LookIn:=xlValues, _
               SearchOrder:=xlByRows, _
               SearchDirection:=xlPrevious).Row
       DerCol = .Cells.Find("*", LookIn:=xlValues, _
               SearchOrder:=xlByColumns, _
               SearchDirection:=xlPrevious).Column
        With .Range("A18", .Cells(DerLig, DerCol))
           For Each Elt In Bordure
               With .Borders(Elt)
                   .LineStyle = xlContinuous
                   .Weight = xlThin 'Or Thick
                   'Constantes couleurs disponibles
                   'vbRed , VBBroun, vbGreen, vbWhite
                   'vbCyan, vbBlue, vbYellow
                   .Color = vbBlack
               End With
           Next
       End With
       With .Range("B18", .Cells(DerLig, 3))
            .Borders(xlEdgeLeft).LineStyle = xlNone
       End With
       With .Range("A18", .Cells(DerLig, 1))
            .Borders(xlEdgeBottom).LineStyle = xlNone
      End With
   End If
End With

Pascal

Salut,

Selon moi c'est absolument faux que mes trois codes-démo font tous la même chose Mais bon, peut-être as-tu loupé quelque chose

Dans le fichier ci-joint, le code ci-dessous réalise normalement ce que tu désires, quel que soit le nombre de lignes.

Sub Démo_4()
Dim DerLig As Integer

DerLig = Range("A" & Rows.Count).End(xlUp).Row

Range("A18:L" & Rows.Count).Borders.LineStyle = xlNone

Range("E18:K18").Borders.Weight = xlThin
Range("A18:D18 , A19:D" & DerLig & " , E19:E" & DerLig & ", F19:F" & DerLig & ", G19:G" & DerLig & ", H19:H" & DerLig & ", I19:I" & DerLig & ", J19:J" & DerLig & ", K19:K" & DerLig).BorderAround Weight:=xlThin

End Sub

Si ce n'est pas ça, merci de me fournir un exemple de ce que tu voudrais précisément.

Amicalement.

NB : Tu ne t'es pas trop cassé la tête à chercher ce que réalisaient mes codes, non ??

14essai-print-v2.xlsm (28.35 Ko)

bonjour Yvouille

Selon moi c'est absolument faux que mes trois codes-démo font tous la même chose Mais bon, peut-être as-tu loupé quelque chose

méa culpa les démo 1 et 2 oui mais pas la 3 qui encadre seulement le bloc de cellules et les autres encadrent toutes les cellules

cette dernière démo 4 est tout a fait ce que je voulais et l'ai même réussi a l'inclure dans le bon fichier

beaucoup de ta contribution

Pascal

Salut et merci pour ta bonne note

Excuse-moi d’insister, mais avec la démo 1, tu as une bordure parfaitement uniforme pour toutes les cellules ; avec la démo 2, tu as en plus un cadre plus épais autour du tableau et avec la démo 3, tu as une mise en forme par ‘blocs’ de cellules.

Mon idée était de te montrer toutes les possibilités afin que tu puisses progresser par toi-même, mais tu es resté bloqué sur le fait que ça devait en plus tenir compte du nombre de ligne (ce qui d’après moi n’a rien à voir avec la mise en forme des bordures en général) et tu n’as apparemment même pas regardé mes codes dans lesquels on voit bien la différence.

Amicalement.

bojour Yvouille

merci de ta réponse , j'ai évidement regarder les codes pour voir comment il fonctionnait et au vu des différences

je ne comprenais pas que démo 1 et 2 fasse la même chose , mais pas remarquer la particularité du demo2 qui fait des bordures a cadre plus épais

il est vrai que je me focalisais sur le fonctionnement qui maintenant fonctionne a merveille

Pascal

Rechercher des sujets similaires à "probleme bordures"