Sub Test2() 'Contrôle Format Date et Client
MonMax = Application.Max(Sheets(DATA).Range("BB65536").End(xlUp).Row, Sheets(DATA).Range("BC65536").End(xlUp).Row)
For Each x In Sheets(DATA).Range("BB2:BC" & MonMax)
If x = "" Or x = 0 Then
Sheets(CONTROLE).Cells(10, 256).End(xlToLeft).Offset(0, 1) = x.Address(REF_ABS, REF_ABS) 'Date manquante
Select Case MsgBox("" _
& vbCrLf & "" _
& vbCrLf & "" _
, vbOKCancel Or vbExclamation Or vbDefaultButton1, Application.Name)
Case vbOK
Case vbCancel
End Select
Select Case MsgBox("Date manquante (1)" _
& vbCrLf & "" & x _
& vbCrLf & "" & x.Address(REF_ABS, REF_ABS) _
& vbCrLf & "" & x _
, vbOKCancel Or vbExclamation Or vbDefaultButton1, Application.Name)
Case vbOK
Case vbCancel
Exit Sub
End Select
End If
If x.NumberFormat <> "m/d/yyyy" Then
Sheets(CONTROLE).Cells(8, 256).End(xlToLeft).Offset(0, 1) = x.Address(REF_ABS, REF_ABS) 'Format date
Select Case MsgBox("Incohérence de date (2)" _
& vbCrLf & "" & x.NumberFormat _
& vbCrLf & "" & x _
& vbCrLf & "" & x.Address(REF_ABS, REF_ABS) _
& vbCrLf & "" & x _
, vbOKCancel Or vbExclamation Or vbDefaultButton1, Application.Name)
Case vbOK
Case vbCancel
Exit Sub
End Select
End If
If x <> Sheets(DATA).Cells(2, x.Column) Then
Select Case MsgBox("Incohérence de date (3)" _
& vbCrLf & "" & x _
& vbCrLf & "" & x.NumberFormat _
& vbCrLf & "" & x.Address(REF_ABS, REF_ABS) _
& vbCrLf & "différent de " _
& vbCrLf & "" & Sheets(DATA).Cells(2, x.Column) _
& vbCrLf & "" & Sheets(DATA).Cells(2, x.Column).NumberFormat _
& vbCrLf & "ligne 2 et colonne " & x.Column _
& vbCrLf & "" _
, vbOKCancel Or vbExclamation Or vbDefaultButton1, Application.Name)
Case vbOK
Case vbCancel
Exit Sub
End Select
Sheets(CONTROLE).Cells(11, 256).End(xlToLeft).Offset(0, 1) = x.Address(REF_ABS, REF_ABS) 'Incoherence date
End If
Next
For Each x In Sheets(DATA).Range("A2:" & Sheets(DATA).Range("A65536").End(xlUp).Address)
If x = "" Or x = 0 Then Sheets(CONTROLE).Cells(9, 256).End(xlToLeft).Offset(0, 1) = x.Address(REF_ABS, REF_ABS) 'N° client manquant
If x <> Sheets(DATA).Cells(2, x.Column) Then Sheets(CONTROLE).Cells(12, 256).End(xlToLeft).Offset(0, 1) = x.Address(REF_ABS, REF_ABS) 'Incohérence N° client
Next
Call CtrlPrix
End Sub