Un petit test a effectuer

Résolu
dudulleray -  
 dudulleray -
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. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    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
  2. dudulleray
     
    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