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 :

Demande code VBA


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Réceptionniste
    Inscrit en
    Juin 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Réceptionniste
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2024
    Messages : 5
    Par défaut Demande code VBA
    Bonjour,

    Je ne m'y connais pas du tout dans les macros, VBA, etc. Je travaille en hôtellerie et à mon ancien travail, un collègue avait créé une macro pour enregistrer le fond de caisse. Je m'explique.
    Il avait créé un bouton sur Excel pour sauvegarder le document qui s'enregistrait tout seul avec un petit pop-up genre "la caisse est enregistrée" (vive la magie haha) à une date précise (ex : il y avait un fichier 2024, puis un fichier par mois de l'année et si on était le 08 juin, le document s'enregistrait en juin) et le fichier se renommait automatiquement avec la date du jour et si c'était le service du matin, soir ou nuit. Puis ce document se fermait automatiquement et lorsqu'on le réouvrait c'était de nouveau vierge.

    J'aimerai faire ça à mon nouveau travail mais j'avoue que c'est un peu galère... Si quelqu'un peut m'aider ça serait avec plaisir !!!!

    Merci beaucoup et belle journée,

    Florian

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 511
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 511
    Par défaut
    Salut,

    Heu ...
    C'est extrêmement flou.
    Pour te répondre, il faut connaitre exactement les données manipulées, les fonctionnalités attendues ect ...
    Bref, une expression du besoin en bon et due forme.

    De plus, selon la taille du projet, il faudra peut être envisager de t'adresser à un free-lance.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Réceptionniste
    Inscrit en
    Juin 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Réceptionniste
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2024
    Messages : 5
    Par défaut
    test.xlsm

    Je ne sais pas si le dossier est visible.

    Le but est lorsqu'on clique sur le bouton "enregistrer", le document s'enregistre dans un fichier de l'année et du mois en cours. Le nom du fichier se met automatiquement à la date du jour avec le type de service (matin, soir ou nuit). On reçoit un pop-up disant "La caisse est bien enregistrée" et le document se ferme automatiquement.

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 511
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 511
    Par défaut
    Quelque chose comme ceci:
    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
        Dim Ws As Excel.Worksheet
        Set Ws = ThisWorkbook.Worksheets("Feuil1")
     
        Dim Service As String
        Services = Ws.Range("F5").Value
     
        Dim Path As String
        Path = "M:\Ouistreham\OUISTREHAM - HOTEL\Florian\Caisse\"
        Path = Path & Format(Date, "dd/mm/yyyy") & " - " & Service & ".xlsm"
     
        Dim DisplayAlerts As Boolean
        DisplayAlerts = Application.DisplayAlerts
        Application.DisplayAlerts = False
        ThisWorkbook.SaveAs Path, xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
        Application.DisplayAlerts = DisplayAlerts
     
        MsgBox "La caisse est bien enregistrée", vbOKOnly Or vbInformation, "Enregistrement terminé"

  5. #5
    Membre à l'essai
    Homme Profil pro
    Réceptionniste
    Inscrit en
    Juin 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Réceptionniste
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2024
    Messages : 5
    Par défaut
    Je retourne à l'hôtel, j'essaie et te dis ça !

  6. #6
    Membre à l'essai
    Homme Profil pro
    Réceptionniste
    Inscrit en
    Juin 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Réceptionniste
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2024
    Messages : 5
    Par défaut
    Il me met : "Erreur d'exécution '1004' :
    La méthode 'saveas' de l'objet '_wortbook' a échoué

  7. #7
    Membre à l'essai
    Homme Profil pro
    Réceptionniste
    Inscrit en
    Juin 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Réceptionniste
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2024
    Messages : 5
    Par défaut
    J'ai essayé d'enlever ce qui ne fonctionnait pas, en essayant il s'enregistre bien avec le pop up donc on avance !
    Par contre il s'enregistre dans Mes documents et non à l'endroit demandé :/ et le nom du document se nomme FALSE et non la date du jour avec le service...
    Voilà le document ci-jointFond de caisse.xlsm


    Désolé je t'en demande beaucoup

  8. #8
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Bonjour, l'argument Filename que tu transmets à la méthode saveas ne contient pas de nom de fichier, seulement un chemin, d'où l'erreur 1004.
    Corrige comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.SaveAs Filename:=Path, FileFormat:=xlOpenXMLWorkbookMacroEnabled
    J'ajoute l'argument FileFormat pour permettre la sauvegarde du fichier avec la macro.

  9. #9
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 511
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 511
    Par défaut
    Quand on ne reprend que la moitié des sources proposé ...
    "ca va beaucoup moins bien marcher maintenant, forcément"

Discussions similaires

  1. demande code vba de recherche
    Par marzak_30 dans le forum Excel
    Réponses: 5
    Dernier message: 03/12/2019, 19h20
  2. DEMANDE D'AIDE code vba
    Par amiinaa dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 07/12/2016, 18h16
  3. [XL-2003] Demande code vba
    Par vieuxmonsieur dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/02/2012, 16h02
  4. Réponses: 37
    Dernier message: 15/11/2011, 11h41

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