[.NET -> VBS]gestion automatique d'un fichier

vague27 - 24 mai 2013 à 14:15
cs_cheyenne Messages postés 693 Date d'inscription samedi 18 mai 2002 Statut Membre Dernière intervention 17 avril 2017 - 25 mai 2013 à 16:24
Bonjour,

j'ai crée une application en VB script qui enregistre un fichier , ce qui me reste c'est comment fermer ce fichier ouvert et exécuter le script chaque 10 mingenre ( debut du scripte "etiquette" et à la fin de du scripte "sleep 60000" puis "goto etiquette"), quelqu'un à une idée du code à ajouter svp. merci d'avance.


Set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.AppActivate "Microsoft Excel"

WScript.Sleep 2000

WshShell.SendKeys "^s"

WScript.Sleep 2000

WshShell.SendKeys "~"

WScript.Sleep 2000

WshShell.SendKeys "download2.CSV"

WScript.Sleep 2000

WshShell.SendKeys "~"

14 réponses

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
24 mai 2013 à 15:03
Bonjour,

Si c'est pour automatiser Excel, pourquoi en pas le faire clairement avec l'Automation adapté ?

VBS n'est pas .NET, je déplace donc.

v----Signature--------v----------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
0
Re,
OK, fesons simple, je souhaiterai faire une boucle infini dans un script VBS, quelqu'un connait la commande SVP? merci bien de m'apporter votre aide
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
24 mai 2013 à 20:29
Bonjour,

Le GOTO fonctionne, non ?
C'est très laid, mais ça fonctionne.

v----Signature--------v----------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
0
Re,
j'ai fini par le faire avec une boucle for infinit

for =1 to 2
......
i=i-1
......
next :)

ce qui me manque c'est comment fermer un fichier en vbs, si quelqu'un peut me donner un coup de main, merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
24 mai 2013 à 21:27
Bonjour,

ce qui me manque c'est comment fermer un fichier en vbs, si quelqu'un peut me donner un coup de main, merci


La dernière boule de cristal (celle d'acvive) vient de casser.
0
Bonjour,

arretez de vous moquer des gens monsieur, un minimum de respec s'il vous plait.
0
Utilisateur anonyme
24 mai 2013 à 21:50
Un fichier cela peut être n'importe quoi.
1) Un exécutable
2) Une banque de données
3) Un document Word
4) Un classeur Excel
5) Une chanson au format mp3
6) Un vidéo
7) Un fichier .ini
8) Un driver
9) Une image
10) un Gif animé
11) le registre de ton ordinateur
12 Etc, EtC.

Cela fait que TOI
, RESPECTE les bénévoles qui font l'effort de te répondre gratuitement
, arrête de parler en paraboles et explique VRAIMENT
ton problème.

Ici la méthode Petit Poucet qui sème des graines d'informations incomplètes à toutes les dix pieds est détestée au plus haut point.
0
cmarcotte,

si vous aviez au depart la bonne intension, vous m'auriez demander des eclaircissements, si au moins vous aviez lu mon script, ya bien ecrit, "download.csv", je vous fais signe que je n'attend surtout pas de reponses venant de gens comme vous, je vous conseils de ne rien dire quant vous ne connaissez pas la reponse, c'est plus clean pour le forum.
0
Utilisateur anonyme
24 mai 2013 à 23:04
Utiliser VBS et Sendkeys, c'est le plan le plus stupide que j'ai pu voir pour piloter Excel. Comme dit NHenry, Excel peut (probablement) faire cela très bien lui-même.

C'est pour cela que je te dis D'expliquer vraiment ce que tu veux faire. Ne serait-ce que juste le fait d'utiliser VBS et ses ActiveX (des technologies très anciennes) ouvre la porte à de nombreux problèmes de sécurité.

Et puis, tiens, juste pour te donner une idée des malheurs que les scripts incontrôlés et lancés à tout venant peuvent causer, tu aurais intérêt à prendre connaissance d'une liste de fichiers PDF qui circulent sur Internet et qu'il faut fuir comme la peste.
0
Set WshShell = WScript.CreateObject("WScript.Shell")

for i= 1 to 2

WshShell.AppActivate "Microsoft Excel"

WScript.Sleep 2000

WshShell.SendKeys "^s"

WScript.Sleep 2000

WshShell.SendKeys "~"

WScript.Sleep 2000

WshShell.SendKeys "download2.CSV"

WScript.Sleep 2000

WshShell.SendKeys "~"

WScript.Sleep 2000

WshShell.SendKeys "% F4"

i=i-1

WScript.Sleep 60000

next
0
Utilisateur anonyme
25 mai 2013 à 01:28
Salut,

Et tu l'arrêtes quand ta boucle (si l'on peut appeler ça une boucle) ?
Je ferme excel, que se passe t-il ?
Pense aux futurs forumeurs qui verront cette réponse validée. Ils auront plutôt l'impression d'une "gestion automatique merdique d'un fichier en vbs".
Supprime donc cette validation, suis les conseils qu'on t'as donné plus haut, car, pour te citer :
c'est plus clean pour le forum
0
Utilisateur anonyme
25 mai 2013 à 02:45
Bonjour Banana32,

Ils auront plutôt l'impression d'une "gestion automatique merdique d'un fichier en vbs".


Et puis, pour son grand malheur, tout individu moindrement familier avec Excel et VBA et qui voit une "œuvre" pareille, doit être mort de rire; pour la simple raison qu'Excel a été prévu et conçu pour être manipulé sans Senkeys. Sendkeys est là pour permettre un peu de contrôle sur les applications qui ne supportent pas OLE, comme le Bloc-Notes, FreeCell et Spider Solitaire.

Et puis, s'il veut absolument une patente continue et automatique, il lui suffit simplement de mettre une macro automatique dans un classeur Excel et le faire lancer au besoin par le planificateur de tâches.
0
Utilisateur anonyme
25 mai 2013 à 04:22
Bonjour,
Cmarcotte,
La dernière boule de cristal (celle d'acvive) vient de casser


Oui... mais même quand elle fonctionnait, si je lui demandais de piloter excel avec un script vb elle "bugait" déjà...

vague27,
Regarde un peu ton attitude:
je vous fais signe que je n'attend surtout pas de reponses venant de gens comme vous

Ça c'est ton choix, et on le respecte, donc je ne dis rien... et encore il manque ici ucfoutu qui est parti en WE.

je vous conseils de ne rien dire quant vous ne connaissez pas la reponse

Tu nous conseilles sinon quoi? nous ne serons pas payés à la fin du mois?
Et oui on connait la réponse, simplement on ne veux pas être "mêlés" à une telle "insulte" à la programmation.

Mais c'est également ton choix de procéder ainsi sans suivre le moindre conseil, donc vas y.

Sache que j'ai lu ta question tout au début et que je n'ai pas voulu répondre car je savais que ça allait finir comme ça... hé oui même sans la boule de cristal !!!


Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
0
cs_cheyenne Messages postés 693 Date d'inscription samedi 18 mai 2002 Statut Membre Dernière intervention 17 avril 2017 2
25 mai 2013 à 16:24
Bonjour vague27,
c'est plus clean pour le forum

Ce qui serait plus clean pour le forum serait que tu fasses beaucoup moins de fautes d'orthographe !
De plus, ce n'est pas avec le ton que tu emploies que tu va inciter les bénévoles à te répondre.

A bon entendeur, salut

Cheyenne
0
Rejoignez-nous