1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
| Private Sub Worksheet_Change(ByVal Nb_Devise As Range)
Dim tmp As Integer
tmp = Range("Nb_Devise").Value
'On trace les bordures autour du tableau des devises
plot_borders (tmp)
'On met des valeurs par défaut dans les cellules vides
Dev_complete (tmp)
'On efface les lignes inutilisées
Dev_clean (tmp)
End Sub
Private Sub Dev_complete(tmp As Integer)
'Si les cellules sont vides, alors on leur assigne les valeurs par défaut.
For i = 0 To tmp - 1
If IsEmpty(Range("Debut_Tab_Dev").Offset(i, 0)) And IsEmpty(Range("Debut_Tab_Dev").Offset(i, 1)) Then
Range("Debut_Tab_Dev").Offset(tmp - 1, 0).Value = "#Name"
Range("Debut_Tab_Dev").Offset(tmp - 1, 1).Value = "#Value in USD"
End If
Next i
End Sub
Private Sub Dev_clean(tmp As Integer)
Range(Range("Debut_Tab_Dev").Offset(tmp, 0), Range("Debut_Tab_Dev").Offset(tmp + 3, 1)).Value = ""
End Sub
Private Sub plot_borders(tmp As Integer)
'On enleve les bordures en dessous du tableau
Range(Range("Debut_Tab_dev").Offset(tmp, 0), Range("Debut_Tab_dev").Offset(tmp + 3, 1)).Borders.LineStyle = xlLineStyleNone
'On place les bordures a gauche:
With Range("Debut_Tab_Dev", Range("Debut_Tab_dev").Offset(tmp - 1, 0)).Borders
.LineStyle = xlContinuous
.Weight = xlThin
End With
With Range("Debut_Tab_Dev", Range("Debut_Tab_dev").Offset(tmp - 1, 0)).Borders(xlEdgeRight)
.LineStyle = xlLineStyleNone
End With
'On place les bordures a droite
With Range(Range("Debut_Tab_dev").Offset(0, 1), Range("Debut_Tab_dev").Offset(tmp - 1, 1)).Borders
.Weight = xlThin
.LineStyle = xlContinuous
End With
With Range(Range("Debut_Tab_dev").Offset(0, 1), Range("Debut_Tab_dev").Offset(tmp - 1, 1)).Borders(xlEdgeLeft)
.LineStyle = xlLineStyleNone
End With
End Sub |
Partager