Erreur vba "Constante requise" dans macro d'archivage

altefqhatre

XLDnaute Junior
Hello tout le monde!

je fais appel à vos lumières car je bloque sur un satanée erreur "Constante requise" que je ne comprends pas... J'ai développé une macro permettant de déplacer un fichier pdf dans les archives. La procédure va effectuer les étapes suivantes:

-vérifier si le dossier d'archivage mensuel au format "2016-05", sinon elle va le créer
-déplacer le pdf "toto.pdf" dans ce dossier d'archivage.

En revanche j'ai une erreur sur la variable "annee" (en rouge dans le code) qui me dit "Constante requise":

Code:
Sub Deplacertoto()
    

    
'Vérifie si le dossier mensuel existe et si non le crée
    
    
annee = Year(Now)
mois = Month(Now)

mois = Format(Date, "mm")
annee = Format(Date, "yyyy")

 
 If Dir("Z:\Archives\" & [COLOR="#FF0000"]annee[/COLOR] & "\" & annee & "-" & mois, vbDirectory) <> "" Then

     Else

     MkDir ("Z:\Archives\" & annee & "\" & annee & "-" & mois)
 End If
 
 
'Déplace le pdf du jour dans les archives du disque Z:
    
    Dim objOFS As Variant
    Const SourcePdf = "Z:\pdf"
    Const Destin = "Z:\Archives\" & annee & "\" & annee & "-" & mois

    Set objOFS = CreateObject("Scripting.FileSystemObject")
    'Test si au moins un fichier présent
    If Dir(SourcePdf) <> "" Then
        objOFS.moveFile SourcePdf, Destin
    Else
        MsgBox "Pas de fichier a déplacer!"
    End If

    Set objOFS = Nothing
    
End Sub

Pourriez-vous m'éclairer à ce sujet svp?

Merci par avance! :)

a+
 
Dernière édition:

Robert

XLDnaute Barbatruc
Repose en paix
Re : Erreur vba "Constante requise" dans macro d'archivage

Bonjour [Alt][F4], boujour le forum,

Peut-être comme ça :

Code:
Dim CH As String

CH = "Z:\Archives\" & annee & "\" & annee & "-" & mois
If Dir(CH, vbDirectory) <> "" Then
 

mutzik

XLDnaute Barbatruc
Re : Erreur vba "Constante requise" dans macro d'archivage

bonjour, salut Robert

pour ma part, je dirais que
Const Destin = "Z:\Archives\" & annee & "\" & annee & "-" & mois

pas de variable dans une déclaration de constante sinon ce n'est plus une constante
Destin = "Z:\Archives\" & annee & "\" & annee & "-" & mois
 

Discussions similaires

Statistiques des forums

Discussions
312 082
Messages
2 085 171
Membres
102 805
dernier inscrit
emes