Un petit test a effectuer

Résolu
Bonsoir a tous, forum bonsoir

*

Excel 2007 - VBA

Le petit code ci-joint effectue un MAJ d'une plage a la date du jour
ca fonctionne bien.

Cependant une erreur se produit lorsqu'il ni a rien dans la plage

(( Error d'execution '1004' Pas de cellules correspondantes ))

et je n'arrive pas a tester le cas ou il ni a rien dans la plage

Merci de votre aide, je vous souhaite la bonne soirée a tous

Cordialement Ray


Public Sub MAJ_Date()
Dim Ws As Worksheet, Plage As Range
Set Ws = Worksheets("Carte bleue")

With Ws
Set Plage = .Range("F2:F40").SpecialCells(xlCellTypeConstants)
End With

Plage = Date
Plage.NumberFormat = "dd/mm/yyyy"
End Sub

2 réponses

  1. Contributeur
    Bonjour,
    Ca dépend de ce que tu veux faire..
    La constante que tu emploi remplace des valeur DEJA renseignées, s'il n'y en a aucune ça génère une erreur.

    Si tu veux remplir TOUTES les cellules de F2 à F40 met seulement
        Set Plage = .Range("F2:F40")
    Si tu veux remplacer seulement les cellules qui ont déjà une donnée met

     Public Sub MAJ_Date()
    Dim Plage As Range
    With Sheets("Carte bleue")
    On Error GoTo Sortie
    Set Plage = .Range("F2:F40").SpecialCells(xlCellTypeConstants)
    End With

    Plage = Date
    Plage.NumberFormat = "dd/mm/yyyy"
    Sortie:
    End Sub
    Pourquoi passer la feuille en variable ?
    A+
    0
    1. Salut lermite222

      Merci pour ta réponse et pour la modification du code

      je n'ai pas penser a
      On Error GoTo 

      Donc merci beaucoup, ca fonctionne bien l'erreur n'ai plus engendrer lorsqu'il ni a rien dans la plage("F2:F40").

      En réponse: Pourquoi passer la feuille en variable ?

      le code a été modifier plusieurs fois et je ne sais plus si c'est moi l'auteur.

      Me reste a te remercier de nouveau pour ton aide et de te souhaiter une bonne fin d'après midi.

      Bien cordialement Raymond
      0