Ajouter une cellule dans une formule (complexe)

Fermé
jojo - 10 nov. 2016 à 17:47
yg_be Messages postés 22763 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024 - 11 nov. 2016 à 22:28
Bonjour,

Je suis présentement en train de créer une macro pour insérer des lignes avec certaines valeurs.

J'aimerais savoir s'il y a possibilité d'entrer dans une longue formule un 2e égal $D$9 (par exemple). Voici ma formule:
='Z:\Garage Houle\PLANCHER GARAGE\Work Order\WORK ORDER CLIENT\[170150.xls]Work'!$L$2

En fait, je voudrais que 170150 fasse référence à une cellule et, par la suite, redevient un chiffre (Dans la macro, en insérant une ligne, le = $D$9 sera alors 170151).

Si vous avez besoin de mon fichier Excel ppour mieux comprendre, indiquez-moi la marche à suivre...

Merci
A voir également:

4 réponses

yg_be Messages postés 22763 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024 1 480
10 nov. 2016 à 20:57
Tu veux que le nom du fichier varie en fonction de la valeur de la cellule D9?
Je suis un peu perdu en lisant "170151" à la fin. Pourquoi pas 170150 ?
0
yg_be Messages postés 22763 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024 1 480
10 nov. 2016 à 21:01
Je suggère, sans avoir tout bien compris :
=INDIRECT( "Z:\Garage Houle\PLANCHER GARAGE\Work Order\WORK ORDER CLIENT\[" & $D$9 & ".xls]Work'!$L$2" )
0
Je ne veux pas que le nom du fichier varie en fonction de D9, je vais expliquer différemment...

J'ai un historique dans le quel chaque ligne correspond à un seul travail, et chaque colonne représente plusieurs données du travail (client, marque, modèle, unité, etc.).

La formule que j'ai donné plus haut renvoie l'une de ces données. Cette donnée se trouve sur la feuille Work dans le fichier 170150.xls et à la cellule L2.

Ce que je veux, c'est qu'en insérant une ligne et en copiant les formules de chaque donnée, je puisse changer la valeur de 170150 pour 170151 et toujours +1 chaque fois que j'utilise ma macro.
0
yg_be Messages postés 22763 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024 1 480
10 nov. 2016 à 21:59
Peux-tu nous montrer le code de ta macro?
Tu as plusieurs fichiers, et, pour chaque ligne, tu veux aller chercher L2 dans un autre fichier?
La valeur 170150, tu la détermine comment, c'est un nombre déterminé qui est simplement incrémenté à chaque ligne?
0
jojo > yg_be Messages postés 22763 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024
11 nov. 2016 à 14:19
La macro n'est pas créé encore, j'ai besoin de la solution à mon problème. La valeur 170150 est un nombre qui sera simplement incrémenté de 1 à chaque ligne.

Ma macro sera plutôt simple:
-Faire un tri décroissant des numéros de travail (de 170150 à 170001)
-Insérer une ligne en haut de 170150
-Copier la ligne du travail 170150 pour avoir toutes les formules
-Là c'est mon problème je dois trouver une façon que chaque fois que j'exécute ma macro, la 170150 devienne 170151 (dans la grande formule mentionné plus haut), en apuyant encre , 170152 et etc.
-Save

Et oui,L2 est dans un autre fichier. Comme mentionné précédemment, L2 correspond à une donnée du travail. IL y aur aussi L1, L3, L4, P5 et N7. La formule est exactement la même que celle avec L2.
0
yg_be Messages postés 22763 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024 1 480
11 nov. 2016 à 14:57
Tu as un fichier par numéro de travail, chacun des fichiers contenant des infos en L1, L2, L3, L4, P5 et N7 ?
Et un autre fichier qui contient une ligne par numéro de travail?
Est-ce que cela ne serait pas plus simple de rajouter, sur chaque ligne de ton fichier principal, les infos extraites du fichier correspondant au numéro de travail?
Cela peut se faire sans macro, avec une formule telle que celle-ci :
=INDIRECT( "Z:\Garage Houle\PLANCHER GARAGE\Work Order\WORK ORDER CLIENT\[" & A1 & ".xls]Work'!$L$2" ) 

Cette formule, si elle se trouve en G1, va aller chercher le L2 dans le fichier correspondant au numéro de travail se trouvant en A1.
Si tu copies cette formule vers le bas, elle va faire de même pour toutes les lignes.
0
jojo > yg_be Messages postés 22763 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024
11 nov. 2016 à 22:18
J'ai essayé ta formule et elle ne fonctionne pas.

Et c'est bien une macro que je veux faire pour ajouter une ligne quand un nouveau travail est créé......
0
yg_be Messages postés 22763 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024 1 480
11 nov. 2016 à 22:28
Tu as un fichier par numéro de travail, chacun des fichiers contenant des infos en L1, L2, L3, L4, P5 et N7 ?
Et un autre fichier qui contient une ligne par numéro de travail?
Est-ce que cela ne serait pas plus simple de rajouter, sur chaque ligne de ton fichier principal, les infos extraites du fichier correspondant au numéro de travail?
0