La séparation des données et de les placer dans des feuilles de calcul Excel VBA
J'ai un grand ensemble de données, avec plus de 80K entrées de la forme suivante:
Name Date Value
1T17_4H19_3T19_3T21_2_a_2 09-Aug-11 -9.3159
1T17_4H19_3T19_3T21_2_a_2 10-Aug-11 -6.9662
1T17_4H19_3T19_3T21_2_a_2 11-Aug-11 -3.4886
1T17_4H19_3T19_3T21_2_a_2 12-Aug-11 -1.2357
1T17_4H19_3T19_3T21_2_a_2 15-Aug-11 0.1172
5 25_4Q27_4T30_4H34_3_3_3 19-Jun-12 -2.0805
5 25_4Q27_4T30_4H34_3_3_3 20-Jun-12 -1.9802
5 25_4Q27_4T30_4H34_3_3_3 21-Jun-12 -2.8344
5 25_4Q27_4T30_4Q32_a_a_a 25-Sep-07 -0.5779
5 25_4Q27_4T30_4Q32_a_a_a 26-Sep-07 -0.8214
5 25_4Q27_4T30_4Q32_a_a_a 27-Sep-07 -1.4061
Ces données est contenue dans une seule feuille de calcul. Je souhaite excel pour séparer les données par nom puis place à chaque fois de la série dans une autre feuille de calcul du même classeur. Est-ce possible avec VBA?
Il est assez facile avec VBA. La première chose que vous devez faire est d'enregistrer une macro et déplacer manuellement les données où vous voulez aller. Vous pouvez modifier la macro enregistrée pour répondre à vos besoins.
Pour être clair, vous voulez prendre ces données en une seule feuille et le placer dans des feuilles de calcul distinctes basé sur le nom. - Il Correct?
Peut-être il suffit de télécharger ASAP utilities? J'ai mon propre code pour faire cela, mais cet outil semble tout à fait utilisable: asap-utilities.com/blog/index.php/2010/02/11/...
J'ai oublié que c'est payant pour l'utilité, bien que vous pouvez obtenir un essai de 90 jours. Voici un lien vers un exemple de classeur qui fait ce que vous voulez: blog.contextures.com/archives/2012/02/21/...
Reste - Oui, c'est tout à fait correct. Tête de Restauration - Que je suis le tri par nom de je ne sais pas comment faire en VBA, même par l'enregistrement d'une macro, comme les données sont adjacents. Merci pour les liens, Doug! Malheureusement, je suis sur un mac et son un windows uniquement du programme.... sinon, il semble idéal!
Pour être clair, vous voulez prendre ces données en une seule feuille et le placer dans des feuilles de calcul distinctes basé sur le nom. - Il Correct?
Peut-être il suffit de télécharger ASAP utilities? J'ai mon propre code pour faire cela, mais cet outil semble tout à fait utilisable: asap-utilities.com/blog/index.php/2010/02/11/...
J'ai oublié que c'est payant pour l'utilité, bien que vous pouvez obtenir un essai de 90 jours. Voici un lien vers un exemple de classeur qui fait ce que vous voulez: blog.contextures.com/archives/2012/02/21/...
Reste - Oui, c'est tout à fait correct. Tête de Restauration - Que je suis le tri par nom de je ne sais pas comment faire en VBA, même par l'enregistrement d'une macro, comme les données sont adjacents. Merci pour les liens, Doug! Malheureusement, je suis sur un mac et son un windows uniquement du programme.... sinon, il semble idéal!
OriginalL'auteur Mary | 2012-08-11
Vous devez vous connecter pour publier un commentaire.
Si vous souhaitez enregistrer une macro pour voir ce qui se passe, suivez ces étapes:
J'ai également écrit un code que vous pouvez utiliser pour commencer. Pour que cela fonctionne, vous avez besoin de nom de l'onglet données "MasterList". Le code trie les lignes sur MasterList par nom, puis pour chaque nom dans la liste, crée une nouvelle feuille et copie les données appropriées à la nouvelle feuille, en répétant le processus jusqu'à ce que tous les noms ont été copiés sur de nouvelles feuilles.
Ajouter ce code dans un module et d'exécuter le
DispatchTimeSeriesToSheets
procédure.l'enregistreur de macro est certainement juste un point de départ. Votre problème a été un plaisir de le résoudre -- content que cela fonctionne pour vous.
Salut de la Tête de la Restauration et l' @Reste. Est-il possible d'utiliser ce code pour séparer les données exactement de la même façon, sauf si, selon le deuxième (ou troisième) de l'élément dans le nom (par exemple 4H19 dans 1T17_4H19_3T19_3T21_2_a_2?). Ainsi, dans chaque feuille, j'aurais une colonne pour chaque nom qui contient le deuxième élément (où cette colonne contient la série de temps qu'avant). C'est merveilleux ce que vous les gars, vous pouvez le faire avec un peu de code!
Vous pouvez. Regarder le Milieu de la fonction et de l'utiliser sur le nom. Voici un bon lien: techrepublic.com/article/...
OriginalL'auteur Jon Crowell
J'ai essayé ce code et il a travaillé pour moi.
Ce fractionne les données (basé sur le nom unique) et la coller dans une feuille de calcul distincte qui sera le même nom que le nom dans la colonne A.
Ce que je fais dans le présent code est:
OriginalL'auteur Alex P