Formule excel

Marc BORIVENT -  
 patrick -
Bonjour,
J'ai un petit problème tout simple, dans excel, que je n'arrive pas à résoudre : une formule générée automatiquement à l'aide du caractère de concaténation "&" reste à l'état de formule, et ne se traduit pas par la valeur correspondante.
Exemple : il s'agit de la formule :
="=Feuil"&LC(-1)&"!L2C8" qui donne =Feuil3!L2C8
Mais cette formule reste à l'état de texte, et ne donne pas la valeur de la cellule L2C8 de l'onglet "Feuil3"
Comment faire?
Merci d'avance à celui qui pourra m'aider.
Cordialement,
Marc.

11 réponses

andré
 
Sur la feuille et dans la cellule qui doit recevoir la valeur, taper =, cliquer sur la feuille et la cellule qui contient les données et faire Entrée.
Retouner sur la feuiile d' origine, la formule est indiquée et la valeur mise dans la cellule voulue.
0
Marc Borivent
 
Merci beaucoup, André, mais cette réponse est un peu trop simple. J'ai en effet quelques centaines de formules à générer (si possible automatiquement) à l'aide de ma formule, et je veux justement éviter de les taper une à une à la main.
Merci quand même de vous être penché sur mon problème.

Cordialement,
Marc
0
gbinforme Messages postés 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
je pense que'il y a un "=" de trop dans la formule :

="=Feuil"&LC(-1)&"!L2C8"

cela devrait mieux fonctionner
="Feuil"&LC(-1)&"!L2C8"

toujours zen
0
purrofixe Messages postés 490 Date d'inscription   Statut Membre Dernière intervention   95
 
Bonjour gbinforme,
Je suis sur le problème.
Si j'écris votre formule dans une cellule:
="Feuil"&LC(-1)&"!L2C8" j'obtiens >> Feuil!L2C8
mais pas la valeur de cette référence.
Je cherche toujours....

Salutations
Jean-Pierre
0
Marc
 
Merci pour la réponse, mais cela ne marche pas!
(J'ai quelques centaines de formule analogues à taper, si je n'arrive pas à les générer automatiquement)
Cordialement,
Marc
0
purrofixe Messages postés 490 Date d'inscription   Statut Membre Dernière intervention   95
 
Bonsoir Marc,
J'ai lu votre réponse au poste (4), pouvez-vous donner un peu plus de détail sur votre problème ......
Je pense à une solution par macro vba, mais je n'ai pas assez de détail pour vous aidez..

Salutations
Jean-Pierre
0
Marc
 
Voici les détails :
Dans un classeur excel comprenant de très nombreuses feuilles, je voudrais aller chercher un résultat dans chaque feuille, faisant référence à la même cellule (par ex. : L2C8) et inscrire les résultats dans la 1ère feuille, récapitulative.
Ceci, sans écrire une à une, les formules de type :
=Feuil2!L2C8, =Feuil3!L2C8, =Feuil4!L2C8 ...
J'aurais voulu générer ces formules grâce à la concaténation, en utilisant par exemple la formule suivante :
="=Feuil"&LC(-1)&"!L2C8"
où LC(-1) représente les n°des feuilles successives :2, 3, 4 ...

Cela fonctionne, mais malheureusement, les formules restent à l'état de formules et ne sont pas remplacées par la valeur des différentes cellules L2C8. J'ignore pourquoi.
Par ailleurs, alors que je me débrouillais très bien avec les macros d'Excel4 (1997)( en français), je ne suis pas très familiarisé avec VB (dont la syntaxe est en anglais), et je préfère l'usage des formules lorsque cela est possible.
Merci d'avance pour votre aide.
Cordialement,
Marc
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
purrofixe Messages postés 490 Date d'inscription   Statut Membre Dernière intervention   95
 
Bonsoir Marc,
Merci pour les détails, c'est parfait pour moi.
Pour ce soir je vai mettre mes puces en pause et la suite c'est pour demain..

Salutations
Jean-Pierre
0
gbinforme Messages postés 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
l'idée de la formule est très judicieuse mais elle ne peut pas fonctionner
car si tu fait une concatenation tu n'obtient que le texte.
Pour obtenir le résultat il faut passer par VB.

par exemple, pour obtenir :
- sur la ligne 3 (référence a3) de la feuil1
- depuis la colonne A jusqu'à la colonne maxi des feuilles
- la valeur de la cellule A3 de chacune des autres feuilles
il suffit d'écrire ceci :

Public i As Integer
Public Sub test()
For i = 2 To Worksheets.Count
Range("a3").Offset(0, i - 2).FormulaR1C1 = "=Feuil" & i & "!R3C1"
Next i
End Sub

si tu veux compliquer un peu le paramètrage
pour gérer l'ensemble du récapitulatif
je peux t'aider en répondant à tes questions.

toujours zen
0
purrofixe Messages postés 490 Date d'inscription   Statut Membre Dernière intervention   95
 
Bonjour Marc,
Je souscris entièrement à la réponse de gbinforme.
Ma proposition serait identique, donc je considère le problème
solutionné.
Bonne semaine.

Salutations
Jean-Pierre
0
purrofixe Messages postés 490 Date d'inscription   Statut Membre Dernière intervention   95
 
Bonjour Marc,
J’ai trouvé une petite astuce qui permet de résoudre votre problème sans passer par une macro.
Essayer de procéder comme suit :
-Générer votre formule selon votre méthode : ="=Feuil"&LC(-1)&"!L2C8"
-Vous obtiendrez donc : =Feuil2!L2C8, =Feuil3!L2C8, =Feuil4!L2C8 ..., sous forme de colonne ou de ligne c’est selon..
-Vous sélectionnez ces cellules et faite Copier, Collage spéciale (sur place), vous choisissez Coller valeurs, puis OK.
Maintenant la petite astuce.
-La plage est toujours sélectionnée, dans la barre des formules vous placez le curseur directement à la fin de la formule et vous faites ENTER, la sélection passe à la cellule suivant, vous répétez l’opération autant de fois que nécessaire.
De cette manière, vos formules sont actives…..
J’ai testé, sa marche super.
Bonne chance.

Salutations
Jean-Pierre
0
Marc
 
Merci beaucoup à tous pour vous être penchés sur mon problème.
Vous êtes tous très sympa!

A force de cogiter, j'ai finalement trouvé la solution :
=INDIRECT("Feuil"&LC(-1)&"!L2C8";)

Cette formule remplace le texte d' une formule par la valeur correspondante.
Attention, il faut que l'option d'affichage soit de type L1C1 (outils/options/onglet général : X L1C1), et non de type A1, sinon la formule est légèrement différente.

Merci encore.
Marc
0
purrofixe Messages postés 490 Date d'inscription   Statut Membre Dernière intervention   95
 
Bonsoir Marc,
Je suis content que vous avez trouvé la solution.
Merci infiniment pour l'information.
Bonne semaine.

Salutations
Jean-Pierre
0
patrick
 
bonjour a tous

pourriez vous me dire si dans excel si je peut effectuer un enregistrement automatique avec le contenu d'une certe cellule

ex dans word c'est le premier mot en haut a gauche qui est proposè pour l'enregistrement .

merci a tous
0