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

Excel Discussion :

Utilisation d'un lien dans une cellule excel en VBA [XL-2010]


Sujet :

Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Septembre 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 18
    Points : 7
    Points
    7
    Par défaut Utilisation d'un lien dans une cellule excel en VBA
    Bonjour, j'ai besoin de placé un lien vers un dossier (qui peut changé) dans une cellule excel (afin de changer sa direction simplement et de l'utiliser dans plusieurs macro.

    Ce code a pour but d'ouvrir une fenêtre de sélection des dossiers directement dans le dossier que je désire pointé.

    J'ai actuellement un code qui fonctionne qui est celui-ci :

    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
    Sub CommandButton1_Click()
     
     
    Dim fld As FileDialog
    Dim strFilePath As String
    Set fld = Application.FileDialog(msoFileDialogOpen)
    With fld
     
        .InitialFileName = "Z:\2014\PILOTAGE MPF\PROD\EXPLOITATIONS PLANNING"
        .Show
    End With
    FileToOpen = fld.SelectedItems(1)
     
     
     
     
    TextBox1.Text = FileToOpen
    If FileToOpen = False Then
    MsgBox "No file specified.", vbExclamation, "Duh!!!"
     
     
    End If
    End Sub
    et voici le code modifier qui ne fonctionne pas :

    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
    Sub CommandButton1_Click()
     
     
    Dim fld As FileDialog
    Dim strFilePath As String
    Set fld = Application.FileDialog(msoFileDialogOpen)
    With fld
    Lien = ThisWorkbook.Sheets("TravailIssy").Cells(2, 2)        'le lien vers le dossier est stocké dans la cellule 2B ou (2,2)
        .InitialFileName = Lien
        .Show
    End With
     
    FileToOpen = fld.SelectedItems(1)
     
     
    TextBox1.Text = FileToOpen
    If FileToOpen = False Then
    MsgBox "No file specified.", vbExclamation, "Duh!!!"
     
     
    End If
    End Sub
    Pouvais vous m'expliqué pourquoi la deuxième méthode ne fonctionne pas.

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Peux-tu préciser ce que tu veux dire par "ne fonctionne pas" ?
    Pourquoi ne pas avoir déclarer ta variable "Lien" en String ?
    Que contient la cellule 2,2 ?
    Que content "Lien" juste après la ligne "Lien = ..." ?
    Es-tu sur que ThisWorkbook pointe vers le bon classeur ? (fais juste avant un debug.print ThisWorkbook.name)

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Septembre 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Ce qui ne fonctionne pas c est le faite de venir stocké l'adresse (z:\2014\.......) dans Lien afin de pouvoir l'utilisé, le premier code mis fonctionne correctement et ouvre le document Z: Le probleme viens du faite de stocker ce lien dans Lien et de vouloir l'utilisé ensuite avec la meme commande

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Second et dernier essai : que veut dire "ne fonctionne pas" ? Ca te mets une erreur de syntaxe ? Ca plante à l'exécution (sur quelle ligne) ? Est-ce que ça donne un résultat erroné (quel résultat) ?
    Est-ce que tu as lu les autres questions du message précédent ?

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Septembre 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Ne fonctionne pas = La commande ouvre dans C:\\.......\mesdocuments

    Alors que mon but et d'ouvrir directement la fenêtre dans Z:\\.....

    Car se dossier étant souvent utilisé devoir reparcourir tout les dossiers a chaque utilisation est tres contraignant

  6. #6
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Et les autres questions que j'ai posé dans mon premier message... (ça commence à être pénible de te tirer les vers du nez.. )

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Septembre 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Peux-tu préciser ce que tu veux dire par "ne fonctionne pas" ?

    J'y ai répondu ^^

    Pourquoi ne pas avoir déclarer ta variable "Lien" en String ?

    Je l'ai déclaré mais sa ne résous pas mon problème

    Que contient la cellule 2,2 ?

    L'adresse que je vais récupérer ( j'y ai aussi répondu )
    Z:\2014\PILOTAGE MPF\PROD\EXPLOITATIONS PLANNING

    Que content "Lien" juste après la ligne "Lien = ..." ?

    Lien est juste utilisé pour récupéré la donner qui est ensuite mise dans .InitialFileName

    Es-tu sur que ThisWorkbook pointe vers le bon classeur ? (fais juste avant un debug.print ThisWorkbook.name)

    oui le ThisWorkBook poointe vers le bon dossier

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Septembre 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Je vien de rajouté MsgBox Lien & " " après Lien = ThisWorkBook.Sheets("TravailIssy").Cells(2,2) et la valeur est nul je vais donc vérifier et je vous tiens au courant.

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Septembre 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Je viens de trouvé mon problème qui était bidon lol mon code fonctionné bien mais un collegue a changé le nom de la feuille et donc je ne trouvé pas la valeur que je voulait trouvé ^^.

    Encore merci pour tes réponses et désolé si je n'ai pas était assez précis ^^

  10. #10
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par Benjen Voir le message
    Je vien de rajouté MsgBox Lien & " " après Lien = ThisWorkBook.Sheets("TravailIssy").Cells(2,2) et la valeur est nul je vais donc vérifier et je vous tiens au courant.
    CQFD
    Une question bien posée, c'est 50% (voir plus) de la solution.

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

Discussions similaires

  1. Insérer une formule dans une cellule Excel via VBA
    Par *.Har(d)t dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/02/2020, 13h02
  2. Réponses: 5
    Dernier message: 06/02/2014, 20h43
  3. Réponses: 5
    Dernier message: 14/12/2013, 18h10
  4. [VBA-PP]fonction qui écrit un chiffre dans une cellule excel
    Par alpking dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 26/04/2006, 19h34
  5. Réponses: 4
    Dernier message: 15/04/2005, 15h25

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