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 :

Inserer une valeur d'une cellule dans un chemin d'accès qui se trouve dans une formule excel


Sujet :

Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Accompagnateur personnes handicapés
    Inscrit en
    Juillet 2016
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Accompagnateur personnes handicapés

    Informations forums :
    Inscription : Juillet 2016
    Messages : 111
    Points : 47
    Points
    47
    Par défaut Inserer une valeur d'une cellule dans un chemin d'accès qui se trouve dans une formule excel
    Bonjour,

    J'ai tenté plein de solutions et recherché sur le forum mais je n'arrive pas à régler ce problème.

    J'ai une formule qui me permet de rechercher les salariés qui sont présent le matin "m" et le soir "s".
    Les informations recherchées sont dans un autre fichier [Salaries2018.xlsx] et dans différents classeurs : ici Septembre

    =SI(OU(RECHERCHEV(C$3;[Salaries2018.xlsx]Septembre!$FI$3:$FS$37;3)="m";RECHERCHEV(C$3;[Salaries2018.xlsx]Septembre!$FI$3:$FS$37;3)="ms");1;"")

    Je voudrais remplacer septembre par la valeur qui se trouve dans la cellule A1
    ce qui me permettrait de rechercher les informations dans le bon classeur selon la date voulue

    Par exemple si dans la cellule A1 du fichier actif on trouve "Novembre" je voudrais que la formule devienne :
    =SI(OU(RECHERCHEV(C$3;[Salaries2018.xlsx]Novembre!$FI$3:$FS$37;3)="m";RECHERCHEV(C$3;[Salaries2018.xlsx]Novembre!$FI$3:$FS$37;3)="ms");1;"")

    J'ai essayé plusieurs solutions dont :
    =SI(OU(RECHERCHEV(C$3;[Salaries2018.xlsx]&A1&!$FI$3:$FS$37;3)="m";RECHERCHEV(C$3;[Salaries2018.xlsx]&A1&!$FI$3:$FS$37;3)="ms");1;"")
    mais cela ne fonctionne pas

    Pourriez vous svp m'aider à régler ce problème ?

    Je vous remercie beaucoup

    Cordialement

  2. #2
    Membre actif
    Femme Profil pro
    Technicienne
    Inscrit en
    Avril 2018
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicienne

    Informations forums :
    Inscription : Avril 2018
    Messages : 153
    Points : 264
    Points
    264
    Par défaut
    Bonjour

    La fonction INDIRECT devrait répondre simplement à ton besoin. Je te laisse la découvrir dans l'aide Excel, puis si tu n'arrives pas à poursuivre seul, reviens poser tes questions
    Chez moi : XL-MAC 2011, pas de VBA.
    C'est en bûchant qu'on devient bûcheron.
    C'est en mouchant qu'on devient moucheron.

  3. #3
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 415
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 415
    Points : 16 257
    Points
    16 257
    Par défaut
    Bonjour

    La fonction INDIRECT ne fonctionne que soi le fichier externe est ouvert...

    Peux-tu préciser ta version pour voir quelles pistes sont possibles.
    Chris
    PowerQuery existe depuis plus de 13 ans, est totalement intégré à Excel 2016 &+. Utilisez-le !

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  4. #4
    Membre du Club
    Homme Profil pro
    Accompagnateur personnes handicapés
    Inscrit en
    Juillet 2016
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Accompagnateur personnes handicapés

    Informations forums :
    Inscription : Juillet 2016
    Messages : 111
    Points : 47
    Points
    47
    Par défaut Suite Adressage indirect vers un autre classeur
    Bonjour,

    Merci de votre réponse, j'ai résolu mon problème.
    Voici ma formule

    =SI(OU(RECHERCHEV(C$3;INDIRECT("[Salaries2018.xlsx]"& C80 & "!$FI$3:$FS$37");3)="m";RECHERCHEV(C$3;INDIRECT("[Salaries2018.xlsx]"& C80 & "!$FI$3:$FS$37");3)="ms");1;0)

    Le fichier Salariés2018 appartient à une collègue
    J'ai ajouté un code vba a la fermeture de son fichier qui crée une copie de son fichier

    J'ai inséré à l'ouverture de mon fichier un code vba qui ouvre sa copie, mets à jour les données et referme sa copie.

    Private Sub Workbook_Open()
    With ThisWorkbook
    Workbooks.Open ("Q:\Commun\Salaries2018.xlsx")
    Set WbkS = ActiveWorkbook
    ActiveWorkbook.RefreshAll
    ThisWorkbook.UpdateLinks = xlUpdateLinksAlways
    WbkS.Close False
    End With
    End Sub

    Merci de votre aide

    J'attends votre réponse si vous avez des remarque à faire avant de noter cette discussion résolu

    Cordialement



    Je vous remercie de votre aide

    Cordialement

  5. #5
    Membre du Club
    Homme Profil pro
    Accompagnateur personnes handicapés
    Inscrit en
    Juillet 2016
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Accompagnateur personnes handicapés

    Informations forums :
    Inscription : Juillet 2016
    Messages : 111
    Points : 47
    Points
    47
    Par défaut
    Bonsoir,

    Je viens de relancer mon fichier et je remarque que la fonction indirect ne marche pas si le fichier salaries2018 n'est pas ouvert donc je dois modifier le code vba pour qu'il ne ferme pas le fichier salaries2018.
    Ce qui risque de poser problème si ma collègue ferme son fichier en même temps que j'utilise le mien : Salaries208 sera écrasé lors de la fermeture de son fichier ou ce sera impossible de l'écraser.
    Je réféchi donc à une solution pour régler ce problème

    Serait-il possible d'effacer la dernière ligne de ce code : WbkS.Close False
    et le remplacer par un code qui renomme le fichier en Salaries2018Temp.xlsx et le laisser ouvert (et le masquer si possible)
    ce qui me permettrait de récupérer les données avec la fonction INDIRECT sans avoir de problème si ma collègue ferme son fichier entre temps

    Private Sub Workbook_Open()

    With ThisWorkbook
    Workbooks.Open ("Q:\Commun\Salaries2018.xlsx")
    Set WbkS = ActiveWorkbook
    ActiveWorkbook.RefreshAll
    ThisWorkbook.UpdateLinks = xlUpdateLinksAlways
    WbkS.Close False
    End With
    End Sub

    J'ai essayé
    With ThisWorkbook
    Dim Fichier As String
    Fichier = "Salaries2018Temp.xlsx"
    Workbooks.Open ("Q:\Commun\Salaries2018.xlsx")
    Set WbkS = ActiveWorkbook
    ActiveWorkbook.RefreshAll
    ThisWorkbook.UpdateLinks = xlUpdateLinksAlways
    ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & Fichier, FileFormat:=xlOpenXMLWorkbook
    WbkS.Close False
    End With
    End Sub

    mais cela ne fonctionne pas et je maitrise vraiment pas vba

    Merci de votre aide

    Cordialement

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/09/2018, 11h56
  2. Réponses: 3
    Dernier message: 05/04/2018, 12h01
  3. [XL-2010] Somme d'une valeur qui varie et qui se trouve dans la même cellule.
    Par TAHA CURIEUX dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 08/03/2017, 14h21
  4. [XL-2010] Taper une valeur puis atteindre cellule dans une colonne automatiquement
    Par dyd4_ dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/11/2016, 16h41
  5. Modification d'une valeur de la cellule dans datagridview
    Par pbatty1 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/02/2013, 19h36

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