En combinant les entrées en double avec unique des données dans Excel
J'ai une base de données Excel et j'essaie d'éviter de faire certains manuels d'combinant des données en double. J'ai un tas de listes qui sont essentiellement les mêmes à part les étiquettes de colonne. Ce que j'aimerais avoir à faire est de combiner ces 5 inscriptions en 1 dans la liste, rendant les catégories d'une liste séparée par des virgules dans une seule cellule.
Tourner cette
dans ce
Est-il un moyen d'y parvenir? Mon document a quelques milliers d'annonces, donc, je suis évidemment en essayant d'éviter le manuel de modifier l'itinéraire. Je suis un Excel débutant, donc, tout à la main ou des tutoriels vous pourriez m'indiquer serait appréciée.
Je ne suis pas sûr de la façon de faire? Peut-être que le fait par le biais de Excel, ou est-ce fait par programmation? Je suis un concepteur d'essayer de fudge mon chemin à travers la gestion des données de questions que je suis en cours d'exécution, donc je ne suis vraiment pas sûr de savoir comment aller à ce sujet.
Oui, cela peut être fait à l'aide de VBA (Visual Basic for Applications) qui est probablement la façon la plus simple de programmation pour "communiquer" avec Excel. Nick proposition de réponse, ci-dessous, doit être plus ou moins fonctionnellement équivalent à ce que j'ai décrit et est une autre bonne méthode pour ce type de problème (plus tôt aujourd'hui, j'ai suggéré ce genre de solution sur une autre question).
OriginalL'auteur jbwharris | 2013-04-02
Vous devez vous connecter pour publier un commentaire.
Cela peut aussi être fait à l'aide de formules. Pour mon exemple, les données doivent être triées par la première colonne et il y aurait besoin d'être une ligne d'en-tête.
Vous auriez besoin de plus de deux colonnes (C & D). Tout d'abord, ajoutez une formule qui dit essentiellement: pour concaténer les données dans la colonne B si les données de la colonne A est la même que la ligne au-dessus d'elle, sinon de réinitialisation de la concaténation. La prochaine colonne contient une formule d'identifier la finale des enchaînements de sorte que vous pouvez les trier plus tard.
C'est comment j'allais le faire avec les listes et les catégories dans les colonnes A & B (nouveau, les données devront être triés par colonne A et il y aurait besoin d'être une ligne d'en-tête):
Voici les résultats. Maintenant, je voudrais copier la totalité de la plage et coller des valeurs dans une autre feuille. Les lignes avec la valeur zéro pour la colonne D est ce que je voudrais utiliser. Le tri par colonne D flottent vers le haut.
Permettez-moi d'essayer de briser le cadre de l'instruction si mieux. Pour de vrai: concaténer la cellule juste au-dessus (le cumul de la concaténation) avec la catégorie de la ligne actuelle (je suppose I2). Pour de faux: pas de concaténation, juste référence à la catégorie de la ligne actuelle (I2). Je pense que L3 est à l'origine de la référence circulaire. Cette formule de travail? =SI(A2=A1,L1&", "&I2,I2)
Parfait, c'est exactement ce que je dois faire. Merci beaucoup!
Je vous remercie beaucoup.
OriginalL'auteur Dave Thornton
Cela devrait générer une nouvelle feuille de votre fiche avec les doubles concaténées.
D'utiliser le code suivant, vous devez l'ajouter à un nouveau module dans l'Éditeur VBA
Un Raccourci pour ouvrir l'Éditeur VBA est
Alt+F11
(pour Windows) etAlt+Fn+F11
(pour Mac)Une fois l'Éditeur ouvert, ajouter un nouveau module en le sélectionnant dans le menu "insertion" dans la barre de menu principale. Il devrait ouvrir automatiquement le module de prêt à accepter le code, Si vous pas besoin de le sélectionner (sera nommé "ModuleN", où N est le numéro disponible suivant) à partir de l'explorateur de projet.
Je ne sais pas si le "Scripting.Dictionnaire" est disponible dans osx, mais il ne peut pas faire de mal à essayer.
Je viens de vérifier et il n'y avait pas un Module d'option en vertu de l'Option. Je vais faire un essai au travail le lendemain où j'ai Office 2007. Merci.
OriginalL'auteur NickSlash