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 :

Selection classeur nom incomplet * [XL-2010]


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
    Ressources humaines
    Inscrit en
    Juillet 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2018
    Messages : 21
    Par défaut Selection classeur nom incomplet *
    Bonjour,

    Je suis débutant en VBA et je sollicite votre aide concernant les lignes de code vba suivantes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim fichier_gestionnaire As Workbook
    Set fichier_gestionnaire = Workbooks.Open("C:\Users\lecleuzm\Desktop\Dossier 2019\Envoie automatique anomalie\Gestionnaires au *")
    En sachant que l'erreur est "fichier introuvable", que le chemin d'accès est correct, et que le nom complet de mon fichier est "Gestionnaires au 01_11_2019.xlsx".
    Puisque j'automatise la tâche, je ne peux pas utiliser le nom complet de mon classeur dont la date change. J'utilise habituellement le "*" et cela fonctionne (habituellement) parfaitement. Je n'arrive donc pas du tout à cerner l'erreur.

    J'ai consulté énormément de forums sur ce sujet, mais je n'ai pas trouvé de réponse ou de solution.

    Un trèèèèèès grand merci à tous ceux qui auront bien voulu m'aider.

    Merci beaucoup.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2010
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 194
    Par défaut
    Bonjour,


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        Dim NomFichier As String
        Dim Chemin As String
        Dim fichier_gestionnaire As Workbook
     
        Chemin = "C:\Users\lecleuzm\Desktop\Dossier 2019\Envoie automatique anomalie\"
        NomFichier = Dir(Chemin & "Gestionnaires au *.xlsx")
       Set fichier_gestionnaire = Workbooks.Open(Chemin & NomFichier)
    Attention ceci ne fonctionne que si dans ton répertoire tu n'as qu'un fichier qui correspond à : "Gestionnaires au *.xlsx"
    En effet Dir(Chemin & "Gestionnaires au *.xlsx") renvois la première correspondance trouvée

    A+

  3. #3
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    J'utilise habituellement le "*" et cela fonctionne (habituellement) parfaitement.
    Avec la méthode workbooks.Open ???
    Vraiment ?
    Je vais donc te demander de me montrer un seul exemple de ce que tu affirmes-là. avec cette assurance-là.

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur validation
    Inscrit en
    Février 2019
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur validation
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2019
    Messages : 29
    Par défaut Espaces dans les noms de fichiers et répertoires
    Bonjour mel,

    il me semble avoir eu des démêlées avec des noms de fichiers (ou de répertoires) qui contiennent des espaces.
    Je crois que Vba n'aime pas trop.

    Yves

  5. #5
    Membre averti
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Juillet 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2018
    Messages : 21
    Par défaut
    Je me suis également rendue compte que dans mes dossiers (au niveau précédent), deux commence par "envoie automatique" et c'est peut être ici que mon code s'emmêle les ligne.

    Merci beaucoup Yves j'éviterai les espaces dans mes noms de fichiers à présent.

  6. #6
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Bonjour à tous,

    D'une manière général pour tous les fichiers il est préférable de n'utiliser que certains caractères :

    de A => Z
    de a => z
    de 0 => 9

    et Underscore "_"

    et c'est tout !

    Je me souviens d'une anecdote concernant une utilisatrice (avec une position assez élevée dans la hiérarchie). Cette personne utilisait un classeur Excel important pour elle puisque tout son travail était recensé dedans.
    Bien évidemment elle sauvegardait son travail sur le serveur de sauvegarde.

    Un jour (loi de Murphy) son classeur s'est vérolé impossible de l'ouvrir. Elle demande la sauvegarde de la veille jusque-là rien d'anormal, Sauf que le fichier comportait des caractères spéciaux qui n'ont pas pu être interprété, et le serveur ne voulait pas le réexporté (je l'ai vu de mes propres yeux).

    Du coup, là, c'est le drame. Les personnes du service informatique n'osait pas lui expliqué le problème. J'étais jeune et je trouvais que mettre la tête dans le sable ne servait à rien et j'y suis donc allé.

    J'ai été incendié en bonne et due forme, mais je m'y attendais, et je lui ai expliqué, posément, les caractères à utiliser pour le nom des fichiers. Une fois l'orage passé elle m'a expliqué qu'elle n'avait rien contre moi. Mais vu qu'elle avait perdu son travail cela n'allait pas en resté là. Effectivement quelques jours après le chef de service est venu me voir pour savoir ce que je lui avais dit exactement, car il venait de recevoir une soufflante d'au-dessus et il était pas très content.

    Quelques temps après ils ont mis le logiciel du serveur à jour.

    Cela fait longtemps que j'ai quitté cette société mais cette aventure est restée gravé dans ma mémoire.



    Vu que tu as dit que tu étais autodidacte, peut-être que personne ne te l'as dit et que c’est pour cela que je me suis permis d'apporté mon vécu.


    Bonne journée à tous

  7. #7
    Membre averti
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Juillet 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2018
    Messages : 21
    Par défaut
    Bonjour,

    Cela fonctionne parfaitement, je vous remercie énormément!!!!!

    Si je comprends bien, il faut un peu forcer en mettant le chemin d'accès et le nom constant en variable.

    Je vous remercie beaucoup pour votre aide!

    Mell

    Citation Envoyé par unparia Voir le message
    Oui tout à fait, cela fonctionne très bien dans tous mes fichiers sauf celui pour lequel j'ai créée le post. Pour répondre à ta demande, je l'écris comme cela (par exemple - pour une étude annuelle - l'année change):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim Fichier_demande As Workbook
    Dim effectifs As Workbook
     
        Set Fichier_demande = Workbooks.Open("P:\SCRH-BRSF\FORMATION\Dem PF20*")
        Set effectifs = Workbooks.Open("P:\SCRH-BRSF\FORMATION\Actifs au *")

    Ce n'était pas spécialement assuré, je pensais juste que c'était l'écriture normale (je suis principalement autodidacte donc j'ai parfois/souvent une mauvaise syntaxe/méthode).

    Fichier_demande (nom complet): Dem PF2020 (cela fonctionne depuis 3 ans)
    effectifs (nom complet): effectifs au 25-11-2019 (idem)

    Cela a bien refonctionné aujourd'hui. Je ne vais pas perdre mon temps à écrire des bobards sur des forums vba excel

    A nouveau, je remercie tout le monde

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Rechercher un fichier avec un nom incomplet
    Par tarnx dans le forum VBA Access
    Réponses: 5
    Dernier message: 20/06/2010, 21h34
  2. [XL-2007] Recherche repertoire avec nom incomplet
    Par isfet dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/04/2010, 09h12
  3. Select avec nom de table dynamique
    Par boutss dans le forum SQL
    Réponses: 6
    Dernier message: 31/01/2007, 09h51
  4. Select les noms et le nombre de tables?
    Par Prosis dans le forum Requêtes
    Réponses: 4
    Dernier message: 09/11/2006, 14h00
  5. select des noms de colonne d'une table
    Par Juan dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/09/2006, 15h14

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