Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Griser cellules vides

3 réponses
Avatar
jean-luc Guitard
Bonjour,
Sur plusieurs tableaux et plusieurs lignes, j'ai des données exemple ci dessous
12 0,35 0,35 0,85 0,85 0,85 0,85 0,85 0,85 0,85
0,35 0,6 56
0,35 0,35 0,35 0,3 0,3 0,3 0,3 0,3 0,3
0,35 0,6 0,6
0,35 0,35 0,35 0,85 0,85 0,85 0,85
0,35 0,35 0,35 0,85 0,85 0,85 0,85
comment faire une macros pour que les cellules vides soient en grisé et en hachuré
Les lignes ne commencent pas et ne finissent pas toujours dans les mêmes colonnes
merci

3 réponses

Avatar
Jacquouille
Bonsoir Johny

Sub test_Johny()
For Each c In Range("a1:c10") 'Adapter la plage
If [c] = 0 Then c.Interior.ColorIndex = 15: c.Interior.Pattern =
xlLightHorizontal
Next
End Sub

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."

"jean-luc Guitard" a écrit dans le message de groupe de discussion :
4d80d0ad$0$5416$

Bonjour,
Sur plusieurs tableaux et plusieurs lignes, j'ai des données exemple ci
dessous
12 0,35 0,35 0,85 0,85 0,85 0,85
0,85 0,85 0,85
0,35 0,6 56
0,35 0,35 0,35 0,3 0,3 0,3 0,3 0,3 0,3
0,35 0,6 0,6
0,35 0,35 0,35 0,85 0,85 0,85
0,85
0,35 0,35 0,35 0,85 0,85 0,85
0,85
comment faire une macros pour que les cellules vides soient en grisé et en
hachuré
Les lignes ne commencent pas et ne finissent pas toujours dans les mêmes
colonnes
merci
Avatar
MichD
Bonjouor,

Ta demande n'est pas très claire... essaie ces macros, il devrait y en avoir une qui te satisfait.



Sub TEST()
Dim DerLig As Long
Dim DerCol As Integer
Dim Rg As Range

With Worksheets("Feuil1")
DerCol = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByColumns, _
SearchDirection:=xlPrevious).Column

DerLig = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
Set Rg = Range("A1", .Cells(DerLig, DerCol))
End With

With Rg.SpecialCells(xlCellTypeBlanks)
.Interior.Color = RGB(125, 125, 125)
End With

End Sub

'------------------------------------------
Sub TEST1()
Dim DerLig As Long
Dim DerCol As Integer
Dim Rg As Range, R As Range

On Error Resume Next
Application.ScreenUpdating = False
With Worksheets("Feuil1")
DerLig = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
Set Rg = Range("A1", .Cells(DerLig, 1))
End With
For Each R In Rg.Rows
With R.EntireRow
DerCol = .Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Column
If DerCol > 1 Then
R.Resize(1, DerCol).SpecialCells(xlCellTypeBlanks). _
Interior.Color = RGB(125, 125, 125)
DerCol = 0
End If
End With
Next
Application.ScreenUpdating = True
End Sub
'------------------------------------------



MichD
--------------------------------------------
"jean-luc Guitard" a écrit dans le message de groupe de discussion : 4d80d0ad$0$5416$

Bonjour,
Sur plusieurs tableaux et plusieurs lignes, j'ai des données exemple ci dessous
12 0,35 0,35 0,85 0,85 0,85 0,85 0,85 0,85 0,85
0,35 0,6 56
0,35 0,35 0,35 0,3 0,3 0,3 0,3 0,3 0,3
0,35 0,6 0,6
0,35 0,35 0,35 0,85 0,85 0,85 0,85
0,35 0,35 0,35 0,85 0,85 0,85 0,85
comment faire une macros pour que les cellules vides soient en grisé et en hachuré
Les lignes ne commencent pas et ne finissent pas toujours dans les mêmes colonnes
merci
Avatar
jean-luc Guitard
Bonjour
c'est parfait, merci
bonne journée


Bonjour,

Ta demande n'est pas très claire... essaie ces macros, il devrait y en avoir une qui te satisfait.



Sub TEST()
Dim DerLig As Long
Dim DerCol As Integer
Dim Rg As Range

With Worksheets("Feuil1")
DerCol = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByColumns, _
SearchDirection:=xlPrevious).Column

DerLig = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
Set Rg = Range("A1", .Cells(DerLig, DerCol))
End With

With Rg.SpecialCells(xlCellTypeBlanks)
.Interior.Color = RGB(125, 125, 125)
End With

End Sub

'------------------------------------------
Sub TEST1()
Dim DerLig As Long
Dim DerCol As Integer
Dim Rg As Range, R As Range

On Error Resume Next
Application.ScreenUpdating = False
With Worksheets("Feuil1")
DerLig = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
Set Rg = Range("A1", .Cells(DerLig, 1))
End With
For Each R In Rg.Rows
With R.EntireRow
DerCol = .Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Column
If DerCol > 1 Then
R.Resize(1, DerCol).SpecialCells(xlCellTypeBlanks). _
Interior.Color = RGB(125, 125, 125)
DerCol = 0
End If
End With
Next
Application.ScreenUpdating = True
End Sub
'------------------------------------------



MichD
--------------------------------------------
"jean-luc Guitard" a écrit dans le message de groupe de discussion : 4d80d0ad$0$5416$

Bonjour,
Sur plusieurs tableaux et plusieurs lignes, j'ai des données exemple ci dessous
12 0,35 0,35 0,85 0,85 0,85 0,85 0,85 0,85 0,85
0,35 0,6 56
0,35 0,35 0,35 0,3 0,3 0,3 0,3 0,3 0,3
0,35 0,6 0,6
0,35 0,35 0,35 0,85 0,85 0,85 0,85
0,35 0,35 0,35 0,85 0,85 0,85 0,85
comment faire une macros pour que les cellules vides soient en grisé et en hachuré
Les lignes ne commencent pas et ne finissent pas toujours dans les mêmes colonnes
merci