Solución parte de las validación que este bien completada la planilla
Private Sub CommandButton1_Click()
'Fila Columna Cells(1,1)
Dim colFechaF As Integer: colFechaF = 14
Dim colFechaE As Integer: colFechaE = 13
Dim colFechaC As Integer: colFechaC = 3
Dim minDate As Date
minDate = #1/1/2018#
'desde fila 7 hasta la ultima que encuentre
For f = 7 To ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
Dim strError As String: strError = ""
'Cerrado Cancelado Finalizado Derivado Tienen que tener fecha Finalizado
If (Cells(f, 16).Value = "Cerrado" Or Cells(f, 16).Value = "Cancelado" Or Cells(f, 16).Value = "Finalizado" Or Cells(f, 16).Value = "Derivado") Then
If Cells(f, colFechaF).Value <> "" Then
Cells(f, 23).Interior.Color = RGB(166, 255, 77)
Cells(f, 23).Value = "Ok"
Else:
strError = strError + " - Falta fecha Finalizado"
End If
'Nuevo En Progreso Pendiente no Tienen que tener fecha Finalizado
ElseIf (Cells(f, 16).Value = "En Progreso" Or Cells(f, 16).Value = "Pendiente" Or Cells(f, 16).Value = "Nuevo") Then
If Cells(f, colFechaF).Value <> "" Then
strError = strError + " - No Llevan fecha Finalizado"
Else:
Cells(f, 23).Interior.Color = RGB(166, 255, 77)
Cells(f, 23).Value = "Ok"
End If
End If
'comprobacion de fechas
If Cells(f, colFechaC).Value < minDate Then
strError = strError + " - Fecha mal ingresada"
End If
'Prioridad no puede estar vacia
If Cells(f, 2).Value = "" Then
strError = strError + " - Prioridad vacia"
End If
'Cuenta no puede estar vacia
If Cells(f, 4).Value = "" Then
strError = strError + " - Cuenta vacia"
End If
'Corporativa no puede estar vacia
If Cells(f, 5).Value = "" Then
strError = strError + " - Corporativa vacia"
End If
'Cliente no puede estar vacia
If Cells(f, 6).Value = "" Then
strError = strError + " - Cliente vacia"
End If
'Tarea no puede estar vacia
If Cells(f, 7).Value = "" Then
strError = strError + " - Tarea vacia"
End If
'Origen no puede estar vacia
If Cells(f, 8).Value = "" Then
strError = strError + " - Origen vacia"
End If
'Tipo no puede estar vacia
If Cells(f, 9).Value = "" Then
strError = strError + " - Tipo vacia"
End If
'Naturaleza no puede estar vacia
If Cells(f, 10).Value = "" Then
strError = strError + " - Naturaleza vacia"
End If
'Comunicacion no puede estar vacia
If Cells(f, 11).Value = "" Then
strError = strError + " - Comunicacion vacia"
End If
'Incidente no puede estar vacio
If Cells(f, 15).Value = "" Then
strError = strError + " - Falta Nº Incidente"
End If
'Estado no puede estar vacio
If Cells(f, 16).Value = "" Then
strError = strError + " - Falta Estado"
End If
'Nivel de Soporte no puede estar vacio
If Cells(f, 17).Value = "" Then
strError = strError + " - Falta Nivel de Soporte"
End If
'Tiempo Dedicado no puede estar vacio
If Cells(f, 18).Value = "" Then
strError = strError + " - Falta Tiempo"
End If
'hay errores?
If strError <> "" Then
Cells(f, 23).Value = strError
Cells(f, 23).Interior.Color = RGB(255, 106, 77)
End If
Next f
End Sub