Amélioration propreté du code
Bonjour,
je voulais avoir des avis quand à l'amélioration de la propreté de mon code suivant et m'aider à régler le fait que la ligne rg = range ... ne marche pas :
Private Sub Ajouter_Click()
Dim rg As Range, derniereligne As Integer
derniereligne = Sheets("Fonds").Range("I5555").End(xlUp).Row
'Ajout des valeurs
With Sheets("Fonds")
.Range("B" & derniereligne + 1).Value = isin.Value
.Range("C" & derniereligne + 1).Value = nom.Value
.Range("D" & derniereligne + 1).Value = actions.Value
.Range("E" & derniereligne + 1).Value = obligations.Value
.Range("F" & derniereligne + 1).Value = monetaire.Value
.Range("G" & derniereligne + 1).Value = liquidites.Value
.Range("H" & derniereligne + 1).Value = autres.Value
.Range("I" & derniereligne + 1).Value = Range("D" & derniereligne + 1).Value + Range("E" & derniereligne + 1).Value + Range("F" & derniereligne + 1).Value + Range("G" & derniereligne + 1).Value + Range("H" & derniereligne + 1).Value
.Range("J" & derniereligne + 1).Value = convertibles.Value
.Range("K" & derniereligne + 1).Value = ig.Value
.Range("L" & derniereligne + 1).Value = hy.Value
End With
Sheets("Fonds").Select
rg = Range("B" & derniereligne + 1 & ":L" & derniereligne + 1)
Couleur (rg)
End Sub
Sub Couleur(rg As Range)
'Mise en forme
rg.Borders(xlDiagonalDown).LineStyle = xlNone
rg.Borders(xlDiagonalUp).LineStyle = xlNone
With rg.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ThemeColor = 8
.TintAndShade = -0.249946592608417
.Weight = xlThin
End With
With rg.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ThemeColor = 8
.TintAndShade = -0.249946592608417
.Weight = xlThin
End With
With rg.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ThemeColor = 8
.TintAndShade = -0.249946592608417
.Weight = xlThin
End With
With rg.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ThemeColor = 8
.TintAndShade = -0.249946592608417
.Weight = xlThin
End With
With rg.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ThemeColor = 8
.TintAndShade = -0.249946592608417
.Weight = xlThin
End With
End Sub
Merci beaucoup à tous par avance
bonjour,
une proposition
Private Sub Ajouter_Click()
Dim rg As Range, derniereligne As Long
'Ajout des valeurs
With Sheets("Fonds")
derniereligne = .Range("I5555").End(xlUp).Row
.Range("B" & derniereligne + 1).Value = isin.Value
.Range("C" & derniereligne + 1).Value = nom.Value
.Range("D" & derniereligne + 1).Value = Actions.Value
.Range("E" & derniereligne + 1).Value = obligations.Value
.Range("F" & derniereligne + 1).Value = monetaire.Value
.Range("G" & derniereligne + 1).Value = liquidites.Value
.Range("H" & derniereligne + 1).Value = autres.Value
.Range("I" & derniereligne + 1).Value = Range("D" & derniereligne + 1).Value + Range("E" & derniereligne + 1).Value + Range("F" & derniereligne + 1).Value + Range("G" & derniereligne + 1).Value + Range("H" & derniereligne + 1).Value
.Range("J" & derniereligne + 1).Value = convertibles.Value
.Range("K" & derniereligne + 1).Value = ig.Value
.Range("L" & derniereligne + 1).Value = hy.Value
Set rg = .Range("B" & derniereligne + 1 & ":L" & derniereligne + 1)
End With
Couleur rg
End Sub
Sub Couleur(rg As Range)
'Mise en forme
Dim x
rg.Borders(xlDiagonalDown).LineStyle = xlNone
rg.Borders(xlDiagonalUp).LineStyle = xlNone
For Each x In Array(xlEdgeLeft, xlEdgeTop, xlEdgeBottom, xlEdgeRight)
With rg.Borders(x)
.LineStyle = xlContinuous
.ThemeColor = 8
.TintAndShade = -0.249946592608417
.Weight = xlThin
End With
Next
End Sub
Ca marche à la perfection et merci beaucoup H20 pour la propreté du code !!!
Bonne journée