IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

EXCEL ET VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    autre
    Inscrit en
    Avril 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Avril 2012
    Messages : 23
    Par défaut EXCEL ET VBA
    Bonjour

    J'ai un classeur excel avec du code VBA qui fonctionnait très bien jusqu'à ces derniers jours, lorsque je veux enregistrer et archiver mon fichier j'ai un message qui me demande de supprimer les macros Visual Basic. Bien entendu si je le fais ça ne s'archive pas et ça ne remet pas le fichier vierge.

    Je vais essayer de vous mettre tout mon code et ma capture d'écran avec le message

    merci d'avance pour votre aide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
    Option Explicit
     
    Dim chemin As String
    Dim PathSep As String
    Dim nom As String
     
    Sub Archivage_Devis()
        chemin = ThisWorkbook.Path
        PathSep = Application.PathSeparator
        nom = [D8].Value & "-" & Year([E3]) & "-" & MonthName(Format([E3], "mm")) & "-" & Format([K5], "0000") & ".xlsm"
    '---------------------Création du fichier temporaire
        If [K5] = "" Then MsgBox "Veuillez saisir en cellule K5 le numéro du devis", , "Création abandonnée !": Exit Sub
     
        If MsgBox(" Si le devis est entièrement édité, veuillez confirmer" & vbCrLf & vbCrLf & _
            " l'archivage du devis n° " & nom, vbYesNo, " Veuillez confirmer pour poursuivre,") = vbYes Then
            Application.EnableEvents = False
            Application.DisplayAlerts = False   '-------Annulation des alertes
    '---------------------Nom du fichier à créer extension xls
            ActiveSheet.Shapes.Range(Array("Bouton1")).Visible = False
           ' ActiveSheet.PrintOut copies:=1
            Sheets("Devis").Copy
            ActiveWorkbook.SaveAs chemin & PathSep & "Archives Devis" & PathSep & nom, FileFormat:=52
            ActiveWindow.Close
    '---------------------Après l'archivage le fichier se réinitialise
            ActiveSheet.Shapes.Range(Array("Bouton1")).Visible = True
            Sheets("Devis").Range("E3,E4,A13:G17,A19:F22,G27").ClearContents
            Sheets("Devis").Range("K5").Value = Sheets("Devis").Range("K5").Value + 1
            Application.DisplayAlerts = True   '-------rétablissement des alertes
            Application.EnableEvents = True
        End If
        [K5].Select
        ActiveWorkbook.Save
    End Sub
     
    Sub Archivage_Factures()
        chemin = ThisWorkbook.Path
        PathSep = Application.PathSeparator
        nom = [D8].Value & "-" & Year([E3]) & "-" & MonthName(Format([E3], "mm")) & "-" & Format([K5], "0000") & ".xlsm"
    '---------------------Création du fichier temporaire
        If [K5] = "" Then MsgBox "Veuillez saisir en cellule K5 le numéro de la facture", , "Création abandonnée !": Exit Sub
     
        If MsgBox(" Si la facture est entièrement éditée, veuillez confirmer" & vbCrLf & vbCrLf & _
                    " l'archivage de la facture n° " & nom, vbYesNo, " Veuillez confirmer pour poursuivre,") = vbYes Then
           Application.EnableEvents = False
           Application.DisplayAlerts = False   '-------Annulation des alertes
    '---------------------Nom du fichier à créer extension xls
           Sheets("Facture").Shapes.Range(Array("Bouton2")).Visible = False
         ' ActiveSheet.PrintOut copies:=1
           Sheets("Facture").Copy
           ActiveWorkbook.SaveAs chemin & PathSep & "Archives Factures" & PathSep & nom, FileFormat:=52
           ActiveWindow.Close
    '---------------------Après l'archivage le fichier se réinitialise
            Sheets("Facture").Shapes.Range(Array("Bouton2")).Visible = True
            Sheets("Facture").Range("E3,E4,A14:G21,F24:G24").ClearContents
            Sheets("Facture").Range("K5").Value = Sheets("Facture").Range("K5").Value + 1
            Application.DisplayAlerts = True   '-------rétablissement des alertes
            Application.EnableEvents = True
        End If
        [K5].Select
        ActiveWorkbook.Save
    End Sub
    Images attachées Images attachées  

  2. #2
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut, à lire
    Images attachées Images attachées  

  3. #3
    Membre averti
    Femme Profil pro
    autre
    Inscrit en
    Avril 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Avril 2012
    Messages : 23
    Par défaut
    Citation Envoyé par kiki29 Voir le message
    Salut, à lire
    Bonsoir

    je te remercie mais en modifiant l'extension dans mon code ça ne fonctionne pas

  4. #4
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Re, as-tu regarder le format de sauvegarde par défaut ? Quel est le contenu de ta chaine contenant le chemin complet de ta sauvegarde et sa syntaxe ?

    à voir également

  5. #5
    Membre averti
    Femme Profil pro
    autre
    Inscrit en
    Avril 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Avril 2012
    Messages : 23
    Par défaut
    Citation Envoyé par kiki29 Voir le message
    Re, as-tu regarder le format de sauvegarde par défaut ? Quel est le contenu de ta chaine contenant le chemin complet de ta sauvegarde et sa syntaxe ?

    à voir également
    Si je fais un fichier excel normal il s'enregistre en xlsx

    avec une macro j'enregistre en xlsm

    Ce classeur est donc en xlsm

    et ma ligne de sauvegarde dans mon code est :

    pour les devis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub Archivage_Devis()
        chemin = ThisWorkbook.Path
        PathSep = Application.PathSeparator
        nom = [D8].Value & "-" & Year([E3]) & "-" & MonthName(Format([E3], "mm")) & "-" & Format([K5], "0000") & ".xlsm"
    pour les factures :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub Archivage_Factures()
        chemin = ThisWorkbook.Path
        PathSep = Application.PathSeparator
        nom = [D8].Value & "-" & Year([E3]) & "-" & MonthName(Format([E3], "mm")) & "-" & Format([K5], "0000") & ".xlsm"
    Je sais pas trop si c'est cela que tu me demandes

  6. #6
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Re, regarde ce qui est souligné en rouge plus haut dans le post 2, sinon un debug.print la_chaine pour voir la_chaine dans la fenêtre exécution.

Discussions similaires

  1. [Vba] BDD : Excel + Access + Vba
    Par Emcy dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/11/2005, 10h23
  2. Ouverture d'un fichier Excel en VBA par Access
    Par illight dans le forum Access
    Réponses: 2
    Dernier message: 02/11/2005, 11h14
  3. Comment recupérer la version d'Excel avec VBA ?
    Par ikoto dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/09/2005, 18h51
  4. Création liste dans cellules Excel en VBA
    Par yazoo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/04/2005, 14h46
  5. Comment décaller un bloc de cellule Excel en VBA
    Par bbkenny dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/01/2005, 20h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo