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

VBA Discussion :

Variable environnement dans un chemin de fichier


Sujet :

VBA

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2017
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Variable environnement dans un chemin de fichier
    Bonjour tout le monde !

    Débutant dans Excel je souhaite ouvrir un fichier (nommé fichier dans ce cas).


    Le fichier se trouve toujours à cet emplacement:
    Code: Tout sélectionner
    C:\Users\"identifiant personnel différent pour chaque utilisateur"\Documents\fichier.xlsm


    le problème :

    Le fichier en question est crée de manière automatique dans le dossier document qui se situe dans un dossier nominatif (qui change entre toutes les personnes)

    Si je donne ma macro a un collègue le fichier sera enregistré avec le chemin suivant : C:\Users\"Collègue"\Documents\fichier.xlsm
    le chemin est différent pour chaque collègue (identifiant perso différent du mien)
    On est tous sur le même réseaux.
    On m'a parlé d'utiliser lune variable environnement
    Je ne sais pas comment ça fonctionne.

    Mon code actuel est le suivant: (j'utilise Windows 7 professionnel)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     Chemin = Environ("homepath") & "\documents\Fichier.csv"                      'Le premier fichier csv trouvé
     
         Set Wbcsv = Workbooks.Open(Chemin)       'On ouvre le fichier csv qu'on affecte à la variable Wbcsv
         With Wbcsv.Sheets(1)
             LastLig = .Cells(.Rows.count, 1).End(xlUp).Row  'LastLig est la dernière ligne remplie du fichier csv ouvert
         End With
          With ThisWorkbook.Worksheets("IMPORT")
             For Each c In Wbcsv.Sheets(1).Range("A2:A" & LastLig)   'Pour chaque cellule de A2:Axxx
               NewLig = .Cells(.Rows.count, 1).End(xlUp).Row + 1   'la première cellule vide de la colonne 1 de Feuil1 de ce classeur
               Tablo = Split(c.Value, Sep)                     'On sépare les données par rapport au séparateur (ici le point virgule)
               .Range(.Cells(NewLig, 1), .Cells(NewLig, UBound(Tablo) + 1)).Value = Tablo   'on copie
            Next c
          End With
          Wbcsv.Close                                        'On ferme le fichier csv


    Pouvez-vous m'aider.

    Cdl

  2. #2
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Bonjour
    Regarde ce que te retourne ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Environ("SystemDrive") & Environ("HOMEPATh")
    Pour le reste (identifiant de l'utilisateur) : tu ne précise pas s'il s'agit de
    - son identifiant système --->>
    Environ("UserName")
    ou
    - son identifiant d'utilisateur de l'appli --->>
    choisis celui que tu souhaites utiliser.
    Le reste n'est que concaténation de chaînes de caractères.
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Environ("UserProfile") & "\Documents\fichier.xlsm"
    MsgBox reateObject("WScript.Shell").SpecialFolders("MyDocuments")
    Dernière modification par Invité ; 18/10/2017 à 18h26.

  4. #4
    Expert éminent sénior
    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
    Points : 11 274
    Points
    11 274

Discussions similaires

  1. Variable environnement dans le httpd.conf
    Par gma_morpho dans le forum Apache
    Réponses: 2
    Dernier message: 24/11/2011, 11h47
  2. céation d'une variable environnement dans bash
    Par J4e8a16n dans le forum Linux
    Réponses: 1
    Dernier message: 15/04/2009, 13h37
  3. [VBS] Gestion des espaces dans le chemin de fichiers
    Par Edoxituz dans le forum VBScript
    Réponses: 4
    Dernier message: 23/02/2006, 16h41
  4. Caractères transformés dans les chemins de fichier
    Par canabral dans le forum Langage
    Réponses: 4
    Dernier message: 15/12/2005, 15h24
  5. installer une variable environnement dans windows xp pack 2
    Par superjeanpi dans le forum Windows XP
    Réponses: 1
    Dernier message: 03/03/2005, 10h13

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