Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Maj des liens hypertextes suite Í  un tri

12 réponses
Avatar
Apitos
Bonjour,

J'ai ajouté un nouvel enregistrement Í  ma BDD, Í  la ligne 22 (A22, B22, C22).

Des liens hypertextes ont été créés dans la feuille "Log" (BDD! A22, BDD! B22, BDD! C22).

Mais lorsque j'applique un tri croissant manuel, Í  la BDD, ces liens, ne seront pas Í  jour et, par conséquent, ils pointeront vers d'autres cellules.

Le tri automatique, en VBA, lors de la saisie des données, résout-il ce problème ?

https://www.cjoint.com/c/KCorw6KQX7G

Merci.

10 réponses

1 2
Avatar
MichD
Le 14/03/21 Í  13:23, Apitos a écrit :
Bonjour,
J'ai ajouté un nouvel enregistrement Í  ma BDD, Í  la ligne 22 (A22, B22, C22).
Des liens hypertextes ont été créés dans la feuille "Log" (BDD! A22, BDD! B22, BDD! C22).
Mais lorsque j'applique un tri croissant manuel, Í  la BDD, ces liens, ne seront pas Í  jour et, par conséquent, ils pointeront vers d'autres cellules.
Le tri automatique, en VBA, lors de la saisie des données, résout-il ce problème ?
https://www.cjoint.com/c/KCorw6KQX7G
Merci.

Bonjour,
Un début d'explications, voire dans ton fichier :
https://www.cjoint.com/c/KCpbfd7eVUj
MichD
Avatar
apt apt
Bonjour MichD,
Les liens nouvellement créés dans la feuille LOG continuent de faire référence aux anciennes adresses de cellule.
Si on prend la valeur dans A22, qui a été créée auparavant, comme indiqué dans "BDD avant tri", elle ne conservera pas sa position après avoir appliqué le tri dans "BDD après tri". La valeur a été repositionnée et se trouve maintenant sur la ligne 11 (A11), au lieu de l'ancienne position (ligne 22 = A22).
Naturellement, en fonction de ce changement, le lien sera mis Í  jour pour pointer vers la nouvelle adresse BDD!A11, au lieu de l'ancienne adresse qui était Í  l'origine dans BDD!A22.
https://www.cjoint.com/c/KCplR7gOls0
Comme tu l'as mentionné précédemment :
E ) La mise Í  jour des liens hypertextes de manière automatique n'existe pas, on doit modifier ces liens hypertextes sauf si ces lignes ont été créées par une formule.


- En fait, est-il possible d'avoir une mise Í  jour automatique des liens?
F ) Ton tableau contiendra éventuellement des données de plusieurs feuilles différentes de calcul. Si tu fais un tri dans le tableau de la feuille "BDD", il faudra par macro refaire tous les liens hypertextes faisant référence Í  cette feuille dans le tableau présent. Le même procédé s'appliquera au tri de chacune des feuilles.


-C'est un problème auquel je n'ai pas pensé, et c'est bien que tu l'aies deviné !
NB :
Le tri sera appliqué sur la feuille "BDD" et non pas sur la feuille "Log", qui est déjÍ  triée sur le champ "Date".
Avatar
MichD
A ) Après chaque tri dans la feuille "BDD" et les autres feuilles du
genre, il faudra que tu refasses toutes les entrées dans la feuille
"Log". Il n'y a aucune correspondance en la feuille de données "BDD ou
autres" et la feuille "Log". Aucune mise Í  jour automatique des liens
hypertextes. Par contre, en utilisant des formules comme dans la feuille
"Log", il est possible de faire des tris pourvu que l'on sélectionne la
totalité des colonnes.
B ) Comme tu peux retrouver facilement par un simple clic les données
des autres feuilles Í  partir des liens hypertextes de ta feuille "Log",
c'est ce pourquoi elle existe, je suppose, quelle est la nécessité
d'effectuer des tris sur le type de feuille BDD.
C ) Moi, je suis loin d'être sÍ»r que je veux procéder Í  l'élaboration
d'une macro qui refera les entrées dans la feuille "Log" suite au tri.Tu
voudras conserver la date et l'heure originale de chaque entrée dans la
feuille "Log qui va compliquer la t͢che! Cela risque de prendre du
"temps" et comme je suis Í  la retraite, j'ai d'autres préoccupations
qu'Excel.
MichD
Le 15/03/21 Í  08:18, apt apt a écrit :
Bonjour MichD,
Les liens nouvellement créés dans la feuille LOG continuent de faire référence aux anciennes adresses de cellule.
Si on prend la valeur dans A22, qui a été créée auparavant, comme indiqué dans "BDD avant tri", elle ne conservera pas sa position après avoir appliqué le tri dans "BDD après tri". La valeur a été repositionnée et se trouve maintenant sur la ligne 11 (A11), au lieu de l'ancienne position (ligne 22 = A22).
Naturellement, en fonction de ce changement, le lien sera mis Í  jour pour pointer vers la nouvelle adresse BDD!A11, au lieu de l'ancienne adresse qui était Í  l'origine dans BDD!A22.
https://www.cjoint.com/c/KCplR7gOls0
Comme tu l'as mentionné précédemment :
E ) La mise Í  jour des liens hypertextes de manière automatique n'existe pas, on doit modifier ces liens hypertextes sauf si ces lignes ont été créées par une formule.

- En fait, est-il possible d'avoir une mise Í  jour automatique des liens?
F ) Ton tableau contiendra éventuellement des données de plusieurs feuilles différentes de calcul. Si tu fais un tri dans le tableau de la feuille "BDD", il faudra par macro refaire tous les liens hypertextes faisant référence Í  cette feuille dans le tableau présent. Le même procédé s'appliquera au tri de chacune des feuilles.


-C'est un problème auquel je n'ai pas pensé, et c'est bien que tu l'aies deviné !
NB :
Le tri sera appliqué sur la feuille "BDD" et non pas sur la feuille "Log", qui est déjÍ  triée sur le champ "Date".
Avatar
Apitos
Ne peut-on pas utiliser la technique des champs liés entre tableaux ?
Avatar
MichD
Le 15/03/21 Í  13:59, Apitos a écrit :
Ne peut-on pas utiliser la technique des champs liés entre tableaux ?

Si tu veux de l'information sur le sujet, il y a ceci :
https://support.microsoft.com/fr-fr/office/créer-une-relation-entre-des-tables-dans-excel-fe1b6be7-1d85-4add-a629-8a3848820be3?ui=fr-FR&rs=fr-FR&ad=FR#:~:text=Give%20each%20table%20a%20meaningful,one%20column%20contains%20unique%20values.
Voici ton fichier : https://www.cjoint.com/c/KCptDX6UGbj
Ton tableau de la feuille "Log" s'appelle maintenant "Log"
Il a un nouveau champ "ID" qui porte le nom de la feuille DDB + un
numéro de 1 Í  x. Attention, comme tu auras d'autres feuilles dans
ce tableau, la référence sera aussi leur nom de feuille + le numéro de 1
Í  x.
Ton tableau de la feuille "DDB" s'appelle maintenant "BBD"
Il a aussi un nouveau champ appelé "ID" contenant le nom de la feuille
BBD + un numéro de 1 Í  X.
Comme les données des 2 tableaux ne sont pas constituées de données
fiables, il est difficile de voir si cela fonctionne...
Tu pourrais modifier la procédure afin d'insérer l'information de ces
nouvelles colonnes au fur et Í  mesure que tu entres les données.
J'ai modifié le nom de ces deux tableaux afin de simplifier leur
identification.
Tu crées une relation pour chaque champ ID de chaque tableau des
feuilles vers le champ ID de la feuille "Log".
Bon travail!
MichD
Avatar
MichD
Le 15/03/21 Í  13:59, Apitos a écrit :
Ne peut-on pas utiliser la technique des champs liés entre tableaux ?

Un fichier exercice o͹ il y a une relation entre les 2 tableaux de la
feuille BDD et Log
https://www.cjoint.com/c/KCqpu6O5L6j
Si cela peut t'aider!
MichD
Avatar
Apitos
Bonjour MichD,
Un fichier exercice o͹ il y a une relation entre les 2 tableaux de la
feuille BDD et Log

Dans Excel 2007, je n'ai pas trouvé de relation ...!
Je pense que la création de liens, par formule dans la table TLog, est meilleure que VBA, car le tri dans BDD ne préserve pas les vrais liens dans TLog.
Les liens doivent naturellement dépendre de l'identifiant ?
Avatar
MichD
Le 20/03/21 Í  15:36, Apitos a écrit :
Bonjour MichD,
Un fichier exercice o͹ il y a une relation entre les 2 tableaux de la
feuille BDD et Log

Dans Excel 2007, je n'ai pas trouvé de relation ...!
Je pense que la création de liens, par formule dans la table TLog, est meilleure que VBA, car le tri dans BDD ne préserve pas les vrais liens dans TLog.
Les liens doivent naturellement dépendre de l'identifiant ?

Suppose que tu puisses modifier liens hypertextes tels que tu le souhaites,
Tu as réalisé que si tu fais un tri pour la feuille DBB, toutes les
données de la feuille log ne corresponde plus aux données de la feuille
"DBB" exemple : Nom de la colonne, ancienne Valeur de la cellule,
Nouvelle Valeur, Date + heure de la modification, Nom du profil de
l'usager. À quoi serviront ces données?
C'est une chose de modifier le lien hypertexte de la feuille "Log",
c'est une autre chose de modifier toutes les données qu'elles
contiennent en fonction du tri. De plus, n'oublie pas que tu auras plus
d'une feuille du type "DBB" dans la feuille Log. Jolie case-tête en
perspective!!!
MichD
Avatar
MichD
Le 21/03/21 Í  10:05, MichD a écrit :
Le 20/03/21 Í  15:36, Apitos a écrit :
Bonjour MichD,
Un fichier exercice o͹ il y a une relation entre les 2 tableaux de la
feuille BDD et Log

Dans Excel 2007, je n'ai pas trouvé de relation ...!
Je pense que la création de liens, par formule dans la table TLog, est
meilleure que VBA, car le tri dans BDD ne préserve pas les vrais liens
dans TLog.
Les liens doivent naturellement dépendre de l'identifiant ?

Suppose que tu puisses modifier liens hypertextes tels que tu le souhaites,
Tu as réalisé que si tu fais un tri pour la feuille DBB, toutes les
données de la feuille log ne corresponde plus aux données de la feuille
"DBB" exemple : Nom de la colonne, ancienne Valeur de la cellule,
Nouvelle Valeur, Date + heure de la modification, Nom du profil de
l'usager. À quoi serviront ces données?
C'est une chose de modifier le lien hypertexte de la feuille "Log",
c'est une autre chose de modifier toutes les données qu'elles
contiennent en fonction du tri. De plus, n'oublie pas que tu auras plus
d'une feuille du type "DBB" dans la feuille Log. Jolie case-tête en
perspective!!!
MichD

Si tu veux faire un tri dans la feuille BDD, pourquoi ne pas créer un
Tableau croisé dynamique représentant les données de cette feuille.
À partir de ce TDC, tu peux faire les tris que tu désires sans modifier
les données originales du tableau de la feuille "BDD" et "Log".
MichD
Avatar
apt apt
Bonjour MichD,
Je n'ai aucune idée de cela dans ma tête en ce moment !
puis, je n'ai jamais utilisé de TCD.
1 2