excel 2007 macro valider les données saisies dans la cellule et de montrer msgbox si incorrect

Svp quelqu'un peut aider avec le code suivant. il me donne une erreur à la ligne suivante:

Set range = "C5:L14"

C'est le code complet:

Private Sub Worksheet_Change(ByVal Target As Excel.range)
Dim ws As Worksheet
Dim range As Worksheet

Set ws = Application.ActiveSheet
Set range = "C5:L14"

If Not Application.Intersect(Target, range("C5:L14")) Is Nothing Then

    If range("C5:L14").Value = "" Then Exit Sub

    If range("C5:L14").Date = "< today()" Then Exit Sub

    If range("C5:L14").Date = "> today()" Then MsgBox ("Future dates not allowed!")

    Else
        MsgBox ("Please enter date as follows yyyy-mm")
    End If

End Sub

La date de la mise en forme "2013 Jan" sur les cellules. Les futures dates ne sont pas autorisés et que l'utilisateur ne devrait entrez la date comme "2013-01". Le format doit changer correctement. Si elles tapez "2013 Jan" la mise en forme Conditionnelle ne pas le ramasser. Ont essayé de VALIDATION des DONNÉES, mais il ne me limite à un.

J'ai besoin de la macro pour s'assurer qu'un utilisateur de ne pas entrer une date incorrecte dans les cellules spécifiée.

  • Set Rng = ws.Range("C5:L14") Également de ne pas utiliser le Range mot comme une variable Aussi changer Dim range As Worksheet comme Dim rng As Range
  • BTW, vous n'avez pas besoin de VBA pour cela. Vous pouvez définir manuellement la DataValidation 😉
  • tout cela ressemble à une réponse pour moi :).
InformationsquelleAutor user1955214 | 2013-01-31