XL 2016 Actualisation requête sélection tableau struturé

  • Initiateur de la discussion Initiateur de la discussion ZZ59264
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

ZZ59264

XLDnaute Occasionnel
Bonjour à tous,

J'ai un souci avec ma version Excel 2016 : suite à la mise en place d'un code qui permet l'actualisation d'une requête, je souhaite qu'on passe à la cellule du dessous,

Le hic, c'est qu'à la fin de la procédure VBA, il sélectionne tout le tableau structuré,

Merci d'avance pour votre aide,

Cordialement,
 

Pièces jointes

Solution
Re-,
Essaie avec ce code : (juste modifié l'évènement SelectionChange, mais je mets l'entièreté)

VB:
Dim KeyCells As Range, Tgt As Range
Dim Flag As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Flag Then Exit Sub
Set KeyCells = Union(Me.Range("t_Exemple[Exemple 1]"), Me.Range("t_Exemple[Exemple 2]"))
If Not Intersect(Target, KeyCells) Is Nothing Then
    Set Tgt = Target.Offset(1)
    Flag = True
    Me.Range("t_Exemple").ListObject.QueryTable.Refresh BackgroundQuery:=False
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = Range("t_Exemple[#All]").Address Then
    If Not Tgt Is Nothing Then
        Tgt.Select
    Else...
Re Bonjour Fanch55,

J'ai testé votre code, et le tableau est toujours sélectionné à la fin, la procédure évènementielle met en jaune cette partie :

VB:
Stop ' <-- regarder les cellules affichées avant de continuer

Cordialement,
le tableau est-il entièrement sélectionné avant le stop ou après avoir fait continuer ?

zz.gif



Sinon, la requête PowerQuery est bien celle-ci :
1743170436129.png
 
le tableau est-il entièrement sélectionné avant le stop ou après avoir fait continuer ?

Regarde la pièce jointe 1215460
Non il est sélectionné avant, dés que je rentre un nombre puis entrée

Je n'ai pas besoin de faire continuer, il est sélectionné des que l'actualisation s'arrête,

Oui la requête n'a pas changé depuis le début de la discussion,

Sur toutes les requêtes de mes fichiers Excel, dés que j'en actualise une qui est chargé sur une feuille Excel, automatiquement aprés l’actualisation le tableau structuré est sélectionné,

Cordialement,
 
Dernière édition:
Non il est sélectionné avant, dés que je rentre un nombre puis entrée
  • le Tableau n'est pas sélectionné
  • on clique sur une cellule en colonne [Exemple 1] ou [Exemple 2], le Tableau s’ auto-sélectionne
ou
  • le Tableau n'est pas sélectionné
  • on clique sur une cellule en colonne [Exemple 1] ou [Exemple 2]
  • on saisit une valeur dans la cellule sélectionnée et le Tableau s’ auto-sélectionne
Cas 1 ou 2 ?
Vous pouvez tester le classeur joint ?
 

Pièces jointes

Merci Dan pour vos retours, et je comprends bien la difficulté de déterminer la source de mon problème, ne l'ayant pas chez vous !

En remplaçant Target.offset par Application.Undo, cela empêche l'actualisation de la requête,

Pourquoi j’utilise Power Query : ici il s'agit d'un test, mon fichier de travail est similaire, je souhaitais juste reproduire cet effet de sélection du TS après actualisation de la requête,

Je n'ai pas fait de tableau simple avec des formules car la source est un fichier Excel externe...

Cordialement,
Re
Vous n'avez pas besoin de chaque fois remettre un fichier avec la solution que l'on vous propose.
J'ai votre fichier sur lequel je fais les modifications avant de poster

Oui pour le UNDO, c'est logique. Je voulais simplement savoir si le tableau était encore sélectionné ou pas
Là vous ne le dites pas... quid ?

Pour votre fichier test, est-il lié à votre fichier externe comme votre fichier de travail ?

A la place de la ligne Target, essayez cette ligne -->
Code:
Range("t_Exemple").ListObject.DataBodyRange(Target.Row, Target.Column).Select
 
Dernière édition:
Bonsoir,
Bien qu'ayant vu cette question sur xlp (je n'y suis pas intervenu et n'ayant pas du tout lu ni testé les réponses déjà apportées, ici ou ailleurs), je peux confirmer que sous Xl2016, à l'issue d'une mise à jour de requête PQ, tout le tableau est sélectionné.
Ceci est un fonctionnement normal. (perso, 2016 au boulot, 2024 perso)
Mettre en mémoire l'adresse du Target pourrait être une solution, "pourrait"
Il ne faudrait pas de rajout de lignes, de tri, de....
Bref, pour moi, comportement normal.
Bonne soirée
 
Bonsoir,
Bien qu'ayant vu cette question sur xlp (je n'y suis pas intervenu et n'ayant pas du tout lu ni testé les réponses déjà apportées, ici ou ailleurs), je peux confirmer que sous Xl2016, à l'issue d'une mise à jour de requête PQ, tout le tableau est sélectionné.
Ceci est un fonctionnement normal. (perso, 2016 au boulot, 2024 perso)
Mettre en mémoire l'adresse du Target pourrait être une solution, "pourrait"
Il ne faudrait pas de rajout de lignes, de tri, de....
Bref, pour moi, comportement normal.
Bonne soirée
Bonjour Cousinhub,
chez moi excel 2016 (32 bits), je n'ai rien de sélectionné comme je l'ai signalé plus tôt dans le fil
Mais c'est vrai que la mise à jour d'une requête via PQ devrait le faire
Bizarre...
 
Bonjour Cousinhub,
chez moi excel 2016 (32 bits), je n'ai rien de sélectionné comme je l'ai signalé plus tôt dans le fil
Mais c'est vrai que la mise à jour d'une requête via PQ devrait le faire
Bizarre...
Hello Dan 🙂
Sur mon pc de boulot (enfin, presque....), Office 2016 pro 64 bit (Windows 10), lorsque je fais une actualisation d'une requête, tout le tableau résultant de cette requête est sélectionné, c'est d'ailleurs à cela que je vois que la requête est terminée.
D'où une déduction d'un comportement normal, pour moi
Bonne soirée 👋
 
Hello Dan 🙂
Sur mon pc de boulot (enfin, presque....), Office 2016 pro 64 bit (Windows 10), lorsque je fais une actualisation d'une requête, tout le tableau résultant de cette requête est sélectionné, c'est d'ailleurs à cela que je vois que la requête est terminée.
D'où une déduction d'un comportement normal, pour moi
Bonne soirée 👋
Bizarre tout de même...
Au risque de dire une connerie, c'est presqu'à penser que ce serait la version 64 bits qui provoque cela
Attendons qu'il teste ma dernière proposition
 
Bien qu'ayant vu cette question sur xlp (je n'y suis pas intervenu et n'ayant pas du tout lu ni testé les réponses déjà apportées, ici ou ailleurs), je peux confirmer que sous Xl2016, à l'issue d'une mise à jour de requête PQ, tout le tableau est sélectionné.
Ceci est un fonctionnement normal. (perso, 2016 au boulot, 2024 perso)
Ok, mais comme on re sélectionne la cellule initiatrice après requête , pourquoi le tableau reste-t-il selectionné ?
 
Re-,
J'ai oublié de préciser pour les non-initiés PQ, notre ami utilise une technique dite de self-référencement dans la requête.
Et que les références ne sont peut-être plus celles d'avant????
Pour info, avec 2024, je n'ai pas le problème cité en objet du fil.
 
Bonjour,

quand je mets 4 en D6 puis Entrée, cela me donne également 14 en F6,

mais c'est le tableau complet qui est sélectionné et pas D7 🙁
Oui. chez moi aussi. 😉



Ok, mais comme on re sélectionne la cellule initiatrice après requête , pourquoi le tableau reste-t-il selectionné ?
Chez moi il ne reste pas sélectionné si j'exécute la macro en pas à pas.
Du coup j'ai mis un sleep, mais ça ne change rien : à la fin le TS complet et sélectionné. 🙁
 
Dernière édition:
  • le Tableau n'est pas sélectionné
  • on clique sur une cellule en colonne [Exemple 1] ou [Exemple 2], le Tableau s’ auto-sélectionne
ou
  • le Tableau n'est pas sélectionné
  • on clique sur une cellule en colonne [Exemple 1] ou [Exemple 2]
  • on saisit une valeur dans la cellule sélectionnée et le Tableau s’ auto-sélectionne
Cas 1 ou 2 ?
Vous pouvez tester le classeur joint ?
Bonjour à tous, désolé pour le retard mais je vais tenter de répondre à chaque intervenant :

@Fanch 55 : Il s'agit du cas 2 et en testant le classeur joint le résultat est identique, le TS est sélectionné à la fin de la procédure évènementielle

@Dan : désolé de remettre le fichier, c'est pour voir que je mets bien en place la même procédure et sur le même fichier test puisque vous aviez un doute sur le fichier utilisé,

En remplaçant la ligne Target par :

VB:
Range("t_Exemple").ListObject.DataBodyRange(Target.Row, Target.Column).Select

Un nombre saisi en D6, la cellule sélectionné automatiquement en faisant Entrée est D8, la requête s'actualise et le TS est de nouveau sélectionné,

Le fichier test que j'utilise pour la mise en place de la procédure est strictement le même que celui posté : c'est mon fichier de travail qui fait référence à un fichier externe, c'était uniquement pour préciser le contexte dans lequel j'utilise Power Query plutôt qu'un simple tableau avec des formules,

@Cousinhub, je confirme que peu importe le fichier utilisé chez moi, à la fin de l'actualisation tous les retours de résultats en TS sont sélectionnés.

Jusqu'à présent je m'en fichai un peu, c'est en voulant mettre en place ce fichier de travail avec pour objectif que dés lors que l'utilisateur saisi un nombre dans les colonnes prévues, l'actualisation se fasse et que le curseur se positionne sur la cellule du dessous (le comportement normal d'Excel en fait).

J'ai fait des recherches sur la toile mais rien au sujet d'une option Power Query permettant la non sélection du TS à l'actualisation d'une requête sur Excel 2016.

Je confirme également qu'il s'agit de la méthode du self référencing utilisé ici, et peut être effectivement que si la procédure garde en mémoire la Target, il pourrait me la restituer à la fin de l'actualisation, mais je ne serait l'écrire en VBA.

Merci à tous pour votre contribution, en espérant pouvoir trouver une solution.

Cordialement,
 
Re-bonjour,
Pourriez-vous tester le classeur-joint pour voir s'il colore correctement la cellule sélectionnée par le processus du Change.
Bonjour Fanch55,

J'ai testé le fichier joint, effectivement en saisissant un nombre en D6, la cellule D7 passe en couleur rouge, mais l'actualisation de la requête efface cette coloration et sélectionne le tableau en fin de procédure,

Merci pour votre aide et ténacité,

Cordialement,
 
Si je comprend bien la requête et les précisions que vous avez apportées,

Vous récupérez des données sur un ficher externe au classeur .
Ces données sont retournées sous format de table avec les colonnes Index,Date et Ca

Vous vous servez ensuite de PQ pour transformer la table en
l' étendant avec 2 colonnes étrangères numériques (Exemple 1,Exemple 2).
et enfin une colonne (ca corrigée) est ajoutée, faisant la somme de Ca, exemple 1 et exemple 2 .

En cas de saisie dans les colonnes exemple 1 et exemple 2, la requête ne vous sert finalement qu'à faire les sommes .

Ai-je bon ?
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
455
Retour