Bonjour,
j'ai un tableau nommé en colonne tabz qui est une plage en colonne de dates de jours fériés
tabd est une plage sous forme de tableau qui regroupe des dates en ligne (les cellules sont fusionnées 2 par 2 et affiche toutes les dates de l'année au format jj)
ici 01, 02 etc donc par ex S52 / D / 01, le 01 est inscrit dans la 1ere cellule, celle de gauche et l'autre à droite est vide
je veux rechercher les dates de tabz dans la plage tabd et colorier la plage de colonne correspondant
Sub Tableau()
Dim tabd() As Variant
Dim tabd2() As Variant
Dim i As Long
Dim k As Long
Dim plage As Range
LG = 3 '1ère ligne non vide : Début du tableau
DERNCOL = Cells(LG + 2, Cells.Columns.Count).End(xlToLeft).Column + 1
DERLNG = Cells(LG + 5, 1).End(xlDown).Row
tabz = Range("Jours_fériés_date")
tabd = Range(Cells(LG + 4, 2), Cells(DERLNG, DERNCOL)).Value
Debug.Print "TABD"
Debug.Print tabd(1, 1)
Debug.Print tabd(1, 2)
Debug.Print tabd(1, 3)
Debug.Print "TABZ"
Debug.Print tabz(1, 1)
Debug.Print tabz(2, 1)
Debug.Print tabz(3, 1)
For i = LBound(tabz) To UBound(tabz)
On Error Resume Next
k = Application.Match(tabz(i, 1), Application.Index(tabd), 0)
If ERR.Number = 0 Then
Set plage = Range(Cells(LG, k + 1), Cells(DERLNG, k + 2))
plage.Interior.Color = vbYellow
End If
On Error GoTo 0
Next i
End Sub
le problème c'est que Application.Index(tabd), 0), ne fonctionne pas a mon avis, k indique toujours 0
voici le debug.print, qui est OK
TABD
01/01/2023
02/01/2023
TABZ
01/01/2023
09/04/2023
10/04/2023
avez vous une dée du pourquoi cela ne fonctionne pas
Merci