2009-11-04 4 views
2

J'ai des milliers de petits fichiers CSV que je veux regrouper (avec un peu de manuscrit en premier). Ils sont sur un périphérique NAS, un serveur "SNAP" pour être plus précis. J'ai eu un certain succès avec VBA d'Excel - faire environ 700 fichiers dans environ une minute, si je me souviens (il y a un mois). En fait, c'était un demi-succès: le serveur snap héberge 80% de pdfs et quelques fichiers au format propriétaire et seulement 20% de CSV. La boucle pour tester le filetype a pris le temps d'exécution au nord de 2 heures et le script a apparemment complètement ignoré le filtrage de date que j'ai mis. Le résultat rapide a été sur 700 copies des CSV que j'ai faits et mis sur mon disque C. Je fais des scripts VBA depuis presque 20 ans, et je pense que je suis décent; Je fais beaucoup de lecture et d'écriture de CSV de VBA les 9 dernières années. Donc, ma question est plus sur votre expérience avec les serveurs snap ou NAS en général. Puis-je ne pas traiter le serveur d'accrochage plus ou moins comme n'importe quel lecteur/dossier avec VBA?Ouvrir, lire, écrire des fichiers sur le stockage NAS (Network Attached Storage) via VBScript


VBScript serait-il plus approprié? (utilisant déjà FileSystemObject, après tout)
Si je peux utiliser VBS, puis-je stocker le script sur le NAS et l'exécuter en utilisant taskscheduler? J'apprécierais n'importe quels conseils ou getchas de vous les gens qui ont l'expérience avec des serveurs instantanés!

+1

20 ans? Selon wikipedia VBA est apparu en 1993 –

+0

gnibbler- pardon moi. J'ai commencé à écrire des scripts avec Quattro Pro et/ou Lotus 1-2-3 en premier. Je me souviens quand j'ai été obligé de passer à Excel, je détestais absolument! – klausnrooster

+0

@klausenrooster, maintenant vous avez assez de réputation pour voter. – Fionnuala

Répondre

1

Quelques réflexions sur le choix de la langue:

VB Script est plus léger que VBA en ce qu'elle ne nécessite pas de MS Office à installer. La syntaxe est similaire, donc il n'y a pas de réelle différence de productivité.

aller de l'avant Powershell serait fortement recommandé pour les tâches d'administration du système Windows, le traitement des fichiers texte général, etc.

Quelques réflexions sur l'utilisation du serveur NAS:

a) Si l'exécution de votre script sur un poste de travail, vous devriez être en mesure d'utiliser une chaîne URI \\ monserveur \ myshare pour se connecter à un partage sur le NAS. Si ce n'est pas le cas, vous devrez peut-être associer une lettre de lecteur à ce partage avant l'exécution de votre script. B) Si vous voulez exécuter votre script sur le NAS, il y a deux choses à considérer: le système d'exploitation NAS est-il verrouillé de sorte que vous n'ajoutez pas votre propre tâche planifiée et que ce soit Linux ou une version de Windows? De nombreux produits NAS utilisent Linux embarqué, donc l'exécution d'une solution VBA ou VBScript directement sur le NAS peut ne pas fonctionner, sauf si elle est basée sur quelque chose comme Embedded XP et vous avez accès aux Tâches planifiées, etc

Espérons que cela aide ...

+0

Merci Sam! Je vais trouver la situation de verrouillage et je parie que c'est un système d'exploitation Linux. Peut me mouiller les pieds avec Awk ou Sed! J'ai regardé Powershell, mais je ne fais pas de truc Sysadmin. Je le considère toujours cependant. Je vais rechercher des threads pour PS vs C# pour l'utilisation de .NET pour les petits projets. Merci encore – klausnrooster

+0

J'ai essayé de vous voter, je n'ai pas encore de représentant. – klausnrooster

+0

Powershell est bon pour les tâches d'administration système sur Windows et a un accès complet aux objets .NET, WMI et autres goodies. Il ne serait pas en concurrence avec C# pour le développement de logiciels. –

Questions connexes