$ sur Excel

Fermé
Arno - 5 sept. 2007 à 10:06
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 11 sept. 2007 à 12:48
Bonjour,

Petite question concernant l'utilisation du $ dans Excel :

J'ai tapé tout un tas de formules (sur plus de 100 lignes et une dizaine de colonnes). Maintenant, je veux rendre toutes les formules absolues. C'est à dire que je veux des $ partout.
Sauf que je m'imagine mal faire ça avec F4 sur chaque cellule une par une (vue que j'en ai plus de 1000 à traiter!).
Y a-t-il un moyen de généraliser le $ à toute une plage?

Si je ne me suis pas bien fait comprendre, n'hésitez pas à me demander des détails.

Arno
A voir également:

13 réponses

Bonjour,

Utiliser la fonction remplacer
A par $A
B par $B.... pour chaques colonnes utilisées dans les formules.

par contre s'il faut faire évoluer egalement les lignes !!

une boucle dans une macro vba??

Bart
0
Merci Bart,
Comment utilise tu la fonction REMPLACER exactement? Il faut le mettre dans chaque cellule? ou faut-il le taper?

Sinon pour la propagation du $, j'ai cherché un peu partout sur le net. J'ai pas trouvé grand chose
Ya juste quelqu'un qui donnait une technique en laissant appuyé F4 et CTRL... Mais c'était pas bien expliqué et malgré mes essais, ça n'a pas fonctionné.
Est-ce que cela rappelle qqch à qqun?

Extrait de l'explication trouvé:
De toute manière, tu es obligé de sélectionner d'abord tes cellules en maintenant la touche CTRL enfoncée, ensuite et seulement lorque tu as fini, tu fais F4 et Excel te met en réf absolue tous les cellules...ou alors tu le fais sur la 1ère (tu la sélectionnes et F4) et tout en maintenant CTRL enfoncée, Excel te met toutes les autres cellules en valeur absolue au fur et à mesure que tu sélectionnes les autres...

C'est pas super clair non?
0
Non, si je modifie ma première cellule et que je la propage, je vais avoir la meme chosec aux ligne en dessous

Moi j'ai (par exemple)
Ligne 1: =A20+A22
Ligne 2: =A35+B18

Et je veux :
Ligne 1: =$A$20+$A$22
Ligne 2: =$A$35+$B$18
De meme sur 1000 cellules; je veux eviter de faire F4 dans chaque cellule
Si je suis le raisonnement de mp280272, je vais avoir =$A$20+$A$22 dans toutes les cellules
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
5 sept. 2007 à 12:43
La fonction remplace marche aussi si on sélectionne toutes les cellules par la case supérieure (vide)au croisement des colonnes et des lignes(en haut à gauche des barres de numéro ligne et colonne, on sélectionne toute la feuille..
Par contre attention les dégats: si des formules parlent des colonnes a double lettre (AA ou Ba ou autres par exemple) le remplacement va coller un$ à chaque fois qu'il va trouver la lettre correspondante, et certaines formules seront pourries
C'est à dire que s'il y a une colonne AA dans les formules, on trouvera $A$A, ce qui ne marche pas
Un conseil que je nai pas tenté: essayer de remplacer avec les signes, par exemple une fois avec = par =$, une fois avec + par +$, ça devrait limiter les dégats
Cordialement
0

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

Posez votre question
Milles excuses

"Utiliser la fonction remplacer"
Je voulais parler du sous menu remplacer du menu edition !!
Mais effectivement comme le precise Vaucluse dans le cas d'une colonne AA
ca va poser probléme!!
0
En fait le problème c'est que, comme vous le disiez, ça marche pas avec les colonnes...
Franchement ya pas un moyen de propager le $ à toutes formules facilement?
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
5 sept. 2007 à 14:54
A tout hasard et eéventuellement, pour contourner le probléme du blocage des cellules en cas de recopiage ou déplacement d'un tableau complet:
(sinon, merci de nous expliquer la nécessité de bloquer les cellules pour que l'on puisse (éventuellement et sans prétention!!) vous aider
_Saisir la plage à copier, la copier
_Sélectionner la cellule initiale de recopiage
_Cliquez bouton droit
_Choisir collage spécial
_Choisir" Formules"
Dans ce cas, les formules sont copiées sans être associées au déplacement
Recommencer ensuite le copiage si besoin en sélectionnant "format" pour aligner le formatage sur le mode initial.Il sera peut être nécessaire de refaire aussi l'opération avec largeur colonne, car il est possible que tout le formatage ne vienne pas d'un coup.
Idem avec "commentaires"
Etc.....
PS: comme je le signale plus haut si 'remplacer ne marche pas avec les désignations de colonnes,il marche au moins avec les signes (= devient =$;+devient+$ etc...en conséquence, la méthode est bonne pour bloquer les colonnes, annoncées après le signe dans toutes les formules, mais par pour les lignes qui sont après les lettres, là, rien à faire du moins à ma connaissance. Ceci est donc valable pour déplacer un tableau de colonne à colonne, mais pas le décaler en hauteur.
Bien cordialement
0
Collage special > Formules ne correspond pas non plus à mes attentes (désolé!)

Je vous explique le contexte pour mieux me faire comprendre :
J'ai rempli une centaine de ligne et une dizaine de colonnes avec des formules en les propageant tout simplement. Mais ces lignes sont destinées à être triées. C'est pour cela que j'ai absolument besoin des $ pour garder la référence pour chaque ligne.
Je veux donc ajouter des $ dans toutes mes cellules. Mais comme j'en ai 1000, c'est trop fastidieux de la faire manuellement avec F4.

Donc ce que je cherche c'est un moyen de dire : "mettre des $ devant toutes mes formules sur une plage sélectionnée"
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
5 sept. 2007 à 17:41
Bonjour, Arno

Si ton seul problème concerne les tris, il n'y a pas besoin de bloquer les références.

La solution la plus efficace (et aussi la plus élégante et même la plus "lisible") consiste à donner des noms aux cellules, lignes et colonnes qui interviennent dans tes formules ; de cette façon les tris ne devraient pas avoir d'incidence sur tes résultats.
Ainsi au lieu d'avoir en C3 =A3*B3*$K$1 ou =$A$3*$B$3*$K$1 , tu aurais quelque chose comme =Quantité*PrixUnit*TauxTVA (si la colonne A:A a été nommée "Quantité", la colonne B:B "PrixUnit" et la cellule K1 "TauxTVA").

Si ton problème est de retrouver tes saisies dans leur ordre initial quand tu as fini d'exploiter le fichier trié, il te suffit d'aller chercher une colonne disponible (R:R par exemple) dans laquelle tu affiches une liste incrémentée 1, 2, 3, 4, ... que tu utiliseras comme critère de tri pour retrouver le classement de départ.

Au cas où je n'aurais toujours pas répondu à tes attentes, n'hésite pas à repréciser tes besoins, et si tu veux (si tu peux, aussi) envoie-moi ton fichier (ou un extrait) en utilisant http://cjoint.com/.

Je me tiens à ta disposition.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
5 sept. 2007 à 16:56
C'st effectivement superclair et c'est intérressant pour ce qui me concerne, mais le problème est que lorsque je fais cette opération, Excel lance la fermeture et me demande si je veux enregistrer!
En aucun cas il ne modifie les formules.
Cordialement
0
Idem pour moi... en fait CTR+F4 et ALT+F4 sont des commandes raccourcies pour fermer respectivement une fenetre Excel et le logiciel Excel
J'ai longuement cherché une solution sur le net mais j'ai rien trouvé pour ma requète... je commence à croire que c'est pas possible. A moins qu'un sauveur passe par ce forum???

Merci à tous les autres pour leur aide quand même. C'est toujours sympa de trouver des gens qui essayent de resoudre les pb
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
8 sept. 2007 à 18:25
C'est le silence-radio depuis le 5 septembre ! Ton problème est-il résolu ?
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
5 sept. 2007 à 17:25
Désolé de n'avoir pu vous aider,bonne chance quand même, moi, je n'ai pas la solution>.
Bien cordialement
0
Bonjour,

J'arrive sans doute trop tard mais ça servira peut-être à d'autres...
Une macro VBA qui fait ça sur une zone sélectionnée :

Public Sub ConvertitRef()
' Convertit les formules de la zone sélectionnée (saisies au format A1)
' en absolu ligne et colonne
For Each c In Selection
formule = c.Formula
c.Formula = Application.ConvertFormula(formule, xlA1, , xlAbsolute)
Next c
End Sub
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
11 sept. 2007 à 12:48
Bonjoureriiic
A moi, ça va me servir, merci beaucoup.
Bien cordialement
0