La fonction Date(Année;Mois;Jour) (ou DateSerial() en VBA) devrait convenir.
Cordialement JB
Bonsoir
La macro ci-dessous modifie conditionnellement l'apparence
d'une colonne de dates
37257 est un n° d'ordre de date (01/01/2002)
Si je met une addresse à la place de cellule ça marche
mais avec une formule DATEVAL("01/01/1 & STXT(H1;26;4)) ça ne marche pas (H1 02)
Si je mets A, ça ne marche pas (A validé comme nombre en chaîne).
Mon problème :
comment remplacer 37257 par une variable et non une addresse de cellule ?
Cordialement
Sub Macro4()
Dim F As Worksheet, A As Variant, T As String
A = Worksheets("W").Range("B7").Value
If Not IsNumeric(A) Then Exit Sub
T = ActiveSheet.Name
With Worksheets(T)
With .Range(.Cells(2, 8), .Cells(100, 8))
.FormatConditions.Delete
With .FormatConditions.Add(xlCellValue, xlLess, "37257")
.Font.Italic = True
End With
End With
End With
End Sub
MichDenis
J'ai pas tout saisi mais si la questtion est :
| comment remplacer 37257 par une variable et non une addresse de cellule ?
'----------------------------- Sub Macro4()
Dim x As Long x = 37257
Dim F As Worksheet, A As Variant, T As String A = Worksheets("Feuil1").Range("B7").Value
If Not IsNumeric(A) Then Exit Sub T = ActiveSheet.Name With Worksheets(T) With .Range(.Cells(2, 8), .Cells(100, 8)) .FormatConditions.Delete With .FormatConditions.Add(xlCellValue, xlLess, x) .Font.Italic = True End With End With End With End Sub '-----------------------------
J'ai pas tout saisi mais si la questtion est :
| comment remplacer 37257 par une variable et non une addresse de cellule ?
'-----------------------------
Sub Macro4()
Dim x As Long
x = 37257
Dim F As Worksheet, A As Variant, T As String
A = Worksheets("Feuil1").Range("B7").Value
If Not IsNumeric(A) Then Exit Sub
T = ActiveSheet.Name
With Worksheets(T)
With .Range(.Cells(2, 8), .Cells(100, 8))
.FormatConditions.Delete
With .FormatConditions.Add(xlCellValue, xlLess, x)
.Font.Italic = True
End With
End With
End With
End Sub
'-----------------------------
| comment remplacer 37257 par une variable et non une addresse de cellule ?
'----------------------------- Sub Macro4()
Dim x As Long x = 37257
Dim F As Worksheet, A As Variant, T As String A = Worksheets("Feuil1").Range("B7").Value
If Not IsNumeric(A) Then Exit Sub T = ActiveSheet.Name With Worksheets(T) With .Range(.Cells(2, 8), .Cells(100, 8)) .FormatConditions.Delete With .FormatConditions.Add(xlCellValue, xlLess, x) .Font.Italic = True End With End With End With End Sub '-----------------------------
M41
Bonjour & merci
En fait c'est ça mais comme j'avais observé dans l'aide(?) VBA que le nombre était rentré sous forme de chaîne ( "37257" ), j'utilisais la variable A Pour moi ce sera OK si x ,forme convertie de A en long, est accepté. Je vais tester....
Cordialement
M41
"MichDenis" a écrit dans le message de news: eIEfk%
J'ai pas tout saisi mais si la questtion est :
| comment remplacer 37257 par une variable et non une addresse de cellule ?
'----------------------------- Sub Macro4()
Dim x As Long x = 37257
Dim F As Worksheet, A As Variant, T As String A = Worksheets("Feuil1").Range("B7").Value
If Not IsNumeric(A) Then Exit Sub T = ActiveSheet.Name With Worksheets(T) With .Range(.Cells(2, 8), .Cells(100, 8)) .FormatConditions.Delete With .FormatConditions.Add(xlCellValue, xlLess, x) .Font.Italic = True End With End With End With End Sub '-----------------------------
Bonjour & merci
En fait c'est ça mais comme j'avais observé dans l'aide(?) VBA que le nombre
était rentré sous forme de chaîne ( "37257" ), j'utilisais la variable A
Pour moi ce sera OK si x ,forme convertie de A en long, est accepté.
Je vais tester....
Cordialement
M41
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
eIEfk%230CHHA.1220@TK2MSFTNGP04.phx.gbl...
J'ai pas tout saisi mais si la questtion est :
| comment remplacer 37257 par une variable et non une addresse de cellule
?
'-----------------------------
Sub Macro4()
Dim x As Long
x = 37257
Dim F As Worksheet, A As Variant, T As String
A = Worksheets("Feuil1").Range("B7").Value
If Not IsNumeric(A) Then Exit Sub
T = ActiveSheet.Name
With Worksheets(T)
With .Range(.Cells(2, 8), .Cells(100, 8))
.FormatConditions.Delete
With .FormatConditions.Add(xlCellValue, xlLess, x)
.Font.Italic = True
End With
End With
End With
End Sub
'-----------------------------
En fait c'est ça mais comme j'avais observé dans l'aide(?) VBA que le nombre était rentré sous forme de chaîne ( "37257" ), j'utilisais la variable A Pour moi ce sera OK si x ,forme convertie de A en long, est accepté. Je vais tester....
Cordialement
M41
"MichDenis" a écrit dans le message de news: eIEfk%
J'ai pas tout saisi mais si la questtion est :
| comment remplacer 37257 par une variable et non une addresse de cellule ?
'----------------------------- Sub Macro4()
Dim x As Long x = 37257
Dim F As Worksheet, A As Variant, T As String A = Worksheets("Feuil1").Range("B7").Value
If Not IsNumeric(A) Then Exit Sub T = ActiveSheet.Name With Worksheets(T) With .Range(.Cells(2, 8), .Cells(100, 8)) .FormatConditions.Delete With .FormatConditions.Add(xlCellValue, xlLess, x) .Font.Italic = True End With End With End With End Sub '-----------------------------