Dans Excel, à partir d’une feuille de calcul «A», comment créer une feuille «B» comportant un sous-ensemble de lignes dans «A»?

3

Dans Excel 2007, j'ai une feuille complète de données "A". L'une des colonnes de la feuille "B" s'appelle "Valide" et contient "oui" ou "non".

J'ai créé une deuxième feuille "B". Il est facile de faire apparaître chaque ligne dans "A" dans "B" si la ligne est valide en utilisant une instruction 'if' dans chaque cellule. Mais si c'est invalide, il y a une ligne vide.

J'ai besoin de "B" pour afficher uniquement les lignes de "A" qui sont valides. DEUX GRANDS CAVEATS: - Pas de macros - Pas de filtrage (pour des raisons longues et compliquées).

Je pense que cela pourrait être possible avec vlookup utilisé intelligemment, mais jusqu'à présent, je suis perplexe.


la source

Réponses:

2

Je ne pense pas que vous puissiez utiliser VLookup pour faire ce que vous voulez, car ce n'est pas vraiment une "requête" au sens SQL. Excel n'a pas de langage de requête.

Vous pouvez utiliser MS Query sous Données | Obtenir des données externes | De Microsoft Query.

Sélectionnez votre fichier XLSX comme source, puis sous Options, vous devrez sélectionner Tables système pour afficher les colonnes que vous avez créées. Ensuite, vous pouvez créer une requête simple pour sélectionner ce dont vous avez besoin. Si votre fichier doit se déplacer beaucoup, la seule façon de procéder serait de scinder les feuilles de calcul source et de destination en fichiers XLSX distincts.

Une autre alternative pourrait être un tableau croisé dynamique, avec votre colonne Validité dans le filtre de rapport et votre colonne A dans les étiquettes de ligne. Ensuite, vous pouvez filtrer les lignes non valides dans le filtre de rapport.

Rhys Gibson
la source
Je vous remercie! C’est un moyen extrêmement intelligent et totalement bizzaro de le faire. Je ne pense pas que cela fonctionnera à mes fins car cette feuille de calcul se déplacera beaucoup, de sorte que l'emplacement du fichier cible pour la requête va changer, malheureusement.