OVH Cloud OVH Cloud

encadrement cellules si contient une valeur

5 réponses
Avatar
JACK 43
6Bonsoir,

J'ai des données sur 6 colonnes C,D,E,F,G,H en revanche le nombre de lignes
peuvent être sur un nombre chaque fois différent.

Je voudrait encadrer mes données d'une façon automatique dans ce classeur
sur les colonnes CDEFGH et pour les lignes à partir de la ligne 27 jusqu'à la
dernière ligne où il y a des données. (mais pas des formules)

J'ai une macro qui le fait bien mais elle encadre si elle trouve une formule
(voir fichier joint.)

http://cjoint.com/?mqvnGFgVLS

MERCI A+

5 réponses

Avatar
JB
Bonjour

Dim i As Integer, DerLigne As Long, NumLigne As Long
With Range("A65536")
For i = 0 To 3
NumLigne = .Offset(0, i).End(xlUp).Row
Do While NumLigne > 27
If Cells(NumLigne, i + 1) = "" Then
NumLigne = NumLigne - 1
Else
Exit Do
End If
Loop
DerLigne = IIf(NumLigne > DerLigne, NumLigne,
DerLigne)
Next
End With
Range("C27:H" & DerLigne).Borders.LineStyle = xlContinuous
End Sub

Cordialement JB
Avatar
LSteph
Re,
Sub toto2()
Dim r As Long
For r = [a65536].End(xlUp).Row To 1 Step -1
If Cells(r, 1).Text <> "" Then
Range(Cells(r, 3), [h27]).Select
Exit For
End If
Next
Selection.Borders.LineStyle = xlContinuous

End Sub

'lSteph

"JACK 43" (sansspam)> a écrit dans le message de
news:
6Bonsoir,

J'ai des données sur 6 colonnes C,D,E,F,G,H en revanche le nombre de
lignes
peuvent être sur un nombre chaque fois différent.

Je voudrait encadrer mes données d'une façon automatique dans ce classeur
sur les colonnes CDEFGH et pour les lignes à partir de la ligne 27 jusqu'à
la
dernière ligne où il y a des données. (mais pas des formules)

J'ai une macro qui le fait bien mais elle encadre si elle trouve une
formule
(voir fichier joint.)

http://cjoint.com/?mqvnGFgVLS

MERCI A+



Avatar
AV
Sélection de la plage C27:Hxx > Format > Mise en forme conditionnelle > la
formule est :
=ET($A27<>"";$B27<>"") > Format > Bordure > OK

AV
Avatar
LSteph
;o))) ici c'est l'inverse

Range([A65536].End(xlUp).Offset(0, 2), "H27").Borders.LineStyle =
xlContinuous

'lSteph


"JB" a écrit dans le message de news:

Bonjour

Dim i As Integer, DerLigne As Long, NumLigne As Long
With Range("A65536")
For i = 0 To 3
NumLigne = .Offset(0, i).End(xlUp).Row
Do While NumLigne > 27
If Cells(NumLigne, i + 1) = "" Then
NumLigne = NumLigne - 1
Else
Exit Do
End If
Loop
DerLigne = IIf(NumLigne > DerLigne, NumLigne,
DerLigne)
Next
End With
Range("C27:H" & DerLigne).Borders.LineStyle = xlContinuous
End Sub

Cordialement JB



Avatar
LSteph
Bonjour à tous (je l'ai déjà dit mais désolé, il n'est pas visible ici)
et à JB en particulier
...je faisais bien sûr référence à l'autre fil Selection impression, où
englué dans une inutile réflexion sur s'il survenait qqchose entre B et H,
tu m'as bien cloué par la simplicité de ta dernière solution.
J'en ris encore.
Bien amicalement.

lSteph

"JB" a écrit dans le message de news:

Bonjour

Dim i As Integer, DerLigne As Long, NumLigne As Long
With Range("A65536")
For i = 0 To 3
NumLigne = .Offset(0, i).End(xlUp).Row
Do While NumLigne > 27
If Cells(NumLigne, i + 1) = "" Then
NumLigne = NumLigne - 1
Else
Exit Do
End If
Loop
DerLigne = IIf(NumLigne > DerLigne, NumLigne,
DerLigne)
Next
End With
Range("C27:H" & DerLigne).Borders.LineStyle = xlContinuous
End Sub

Cordialement JB