Excel: Comment puis-je accélérer un Rechercher & Remplacer? Changer de 32 000 liens par classeur
Je suis en comparant un grand nombre de données de plus de 30 catégories. Chaque catégorie classeur est enregistré en "Mondossier' avec son propre nom (la catégorie). Les données dans le classeur se trouve sur une feuille avec le même nom que la catégorie: [Category.xls]CategoryYear_Final!
Il lui semble préférable de créer un modèle standard qui référence les données et qui a produit le nécessaire graphiques et mises en page. Tout a bien fonctionné. Il est temps de démarrer les moteurs et faire des graphiques pour toutes les catégories, en modifiant les noms de référence...
L'aide de la recherche & REMPLACER ça prend plus de 20 minutes chaque classeur comme il y a plus de 32 000 places (deux par cellule) où les mises à jour doit se produire. Crikey!
Toutes les suggestions sur la façon dont cela pourrait être réalisé plus rapidement, ou dois-je tout simplement besoin de s'installer pour un solide 20 heures d'observation Excel lutte à travers.
Merci beaucoup
Michael.
Je ne sais pas Excel assez bien, mais n'est-il pas une option pour désactiver immédiate re-calculs?
Difficile de montrer les données (très sensibles). C'est 1610 rangées de profondeur et 10 colonnes. Les cellules de référence des calculs qui ont été réalisés sur la catégorie de source, des fichiers et comment en % format. Désolé je ne peux pas aider plus. Je vais essayer de le désactiver les calculs de truc.
Avez-vous de le faire dans Excel? Si vous enregistrez les données dans Access, faites vos calculs, puis de les exporter vers Excel?
Je suis en train de faire ce pour un collègue qui a déjà créé des masses de données sur les pays Excel, et je suis maintenant responsable de la production de la finale de graphiques Excel. Ainsi, l'Accès n'est'treally une possibilité pour moi - mais c'est quelque chose que je veux déplacer mon collègue vers.
OriginalL'auteur RocketGoal | 2010-08-27
Vous devez vous connecter pour publier un commentaire.
C'est ce que je ferais. Avant de faire la mise à jour:
Après avoir fait la mise à jour:
Vous pouvez vous assurer que si il y a un problème avec votre mise à jour, vous capture de l'erreur et de passer par la ré-activer la routine de toute façon. Par exemple, si vous avez d'erreur et ne parviennent pas à ré-activer Excel ScreenUpdating, il rend la session inutilisable pour un utilisateur (même s'il peut être résolu par l'éditeur VBA immédiate de la fenêtre, si vous savez quoi faire).
En tant que novice en VBA êtes-vous créer une macro et de mettre le premier bloc de code? Et puis une deuxième macro avec le deuxième bloc de code? Utiliser le premier, la mise à jour puis utiliser la deuxième?
Erreur de manipulation pourrait être : on Error GoTo... Et puis errHandler pop up serait un message me permettant d'annuler la procédure?
J'aurais probablement séparer les sous-programmes appelés Terminé et SwitchOn qui sont appelés par votre Rechercher/Remplacer macro. (Advanced Masterclass: Ce que j'ai fait faire est d'avoir un spécial EventSuppressor classe qui a un startsuppress/killsuppress fonction qui fait tout cela; le Class_Terminate appelle également la killsuppress de routine dans le cas où une erreur s'est déclenché et a sauté du peu que dans votre macro qui appelle killsuppress lorsque vous avez terminé. Ce n'est pas nécessaire, c'est juste la façon dont je industrialiser ce processus que j'ai besoin de l'utiliser plusieurs fois.)
Mon rechercher/remplacer macro est mon index de la main droite et mon sens de l'orientation avec la souris;) Mais je vais travailler sur ma macro compétences si ça va aider à cette tâche.
OriginalL'auteur Joel Goodwin
Travaille dans Excel 2010. C'est super rapide! Fait 851000 remplacements en environ 10 secondes.
OriginalL'auteur excelly cellyson
Probablement, vous devez désactiver les calculs (comme indiqué) et peut-être d'autres choses comme les mises à jour d'écran.
OriginalL'auteur Anthony -GISCOE-
Pour désactiver les calculs:
Si vous avez Excel 2007 ou plus tard (avec le Ruban):
C'est correct; si vous pouvez forcer les calculs en appuyant sur F9 ou en cliquant sur "Calculer" (sur la barre de Formules). D'ailleurs les Options de Calcul sont également sur la barre de Formules, que je n'avais pas réalisé.
OriginalL'auteur JYelton
Réglage des calculs de manuel ne va pas aider, ni l'écriture d'un code VBA.
La seule chose que vous devez faire est de garder tous les fichiers ouverts.
Par Exemple:
Disons que vous avez 3 fichiers: Un, B et C. C recueille des informations à partir de Un, mais il veut maintenant info de B à la place.
Vous mettre à jour le lien avec
find/replace
.La solution est de garder les deux B et C ouverts en même temps, il fonctionne parfaitement.
Jon Helgason
Les Statistiques De L'Islande
OriginalL'auteur Jon Helgason