Discussione:
eseguire file.vbs
(troppo vecchio per rispondere)
Massimiliano
2005-07-08 14:25:41 UTC
Permalink
Salve a tutti
Come si esegue un file con estensione vbs da vba di excel
ho provato con la funzione shell ma non funge
Dim RetVal
RetVal = shell("C:\pippo.vbs", 1)
Grazie per l'attenzione,
Massimiliano
eliano
2005-07-08 15:51:04 UTC
Permalink
Post by Massimiliano
Salve a tutti
Come si esegue un file con estensione vbs da vba di excel
ho provato con la funzione shell ma non funge
Dim RetVal
RetVal = shell("C:\pippo.vbs", 1)
Grazie per l'attenzione,
Massimiliano
L'unico file scritto in vbs che credo di avere opsservato si chiama: I LOVE
YOU, mi pare, e faceva un grande casino.:-))
Vedi se ti può interessare:

http://www.iprogrammatori.it/forum/discussioni.asp?TOPIC_ID=2179&FORUM_ID=3&Topic_Title=problema+di+trasferimento+dati+in+vbs&desc=+

Di più non so, saluti
Eliano
Massimiliano
2005-07-08 16:08:55 UTC
Permalink
Ciao,
Ho un foglio excel contenente diversi indirizzi e-mail nella colonna A.
nella colonna B ho l'oggetto dell'e-mail
nella colonna C ho il testo dell'e-mail
nella colonna D ho il percorso dei file da allegare es:c:\pippo.doc
Devo inviare e-mail utilizzando per forza O.E.
Ho provato con l'istruzione "Mailto:"
URL = "mailto:" & Destinatario & "?subject=" & Oggetto & "&body=" & Body
ActiveWorkbook.FollowHyperlink URL
Ma questa non accetta gli allegati (ne sono venuto a conoscenza dopo diversi
tentativi sui newsgroup Outlook e Internet Explorer)
Mi hanno consigliato di usare uno script (che funziona), ora però dovrei
richiamare lo script da excel.
Ora se esiste un'altra strada in excel per inviare e-mail con O.E.(compreso
l'attach dei file) è graditissima, in mancanza mi faccio bastare lo script
(il problema però è come lanciarlo!!!!!) anche se non è "amorevole" come "I
love You" :-)
Massimiliano
Post by eliano
Post by Massimiliano
Salve a tutti
Come si esegue un file con estensione vbs da vba di excel
ho provato con la funzione shell ma non funge
Dim RetVal
RetVal = shell("C:\pippo.vbs", 1)
Grazie per l'attenzione,
Massimiliano
L'unico file scritto in vbs che credo di avere opsservato si chiama: I LOVE
YOU, mi pare, e faceva un grande casino.:-))
http://www.iprogrammatori.it/forum/discussioni.asp?TOPIC_ID=2179&FORUM_ID=3&Topic_Title=problema+di+trasferimento+dati+in+vbs&desc=+
Di più non so, saluti
Eliano
eliano
2005-07-08 17:24:04 UTC
Permalink
Post by Massimiliano
Mi hanno consigliato di usare uno script (che funziona), ora però dovrei
richiamare lo script da excel.
Ora se esiste un'altra strada in excel per inviare e-mail con O.E.(compreso
l'attach dei file) è graditissima, in mancanza mi faccio bastare lo script
(il problema però è come lanciarlo!!!!!) anche se non è "amorevole" come "I
love You" :-)
Ciao Massimiliano.
Effettivamente era un buon virus, accidenti a lui, anche se mi ha scansato.
Spiacente, ma non uso O.E. e non sono comunque in grado di darti indicazioni.
Oggi in Milan c'è un grazioso consesso di experti in excel, per cui avrai
notato la rarefazione degli interventi.
Credo però che l'unico esperto rimasto, che potrebbe darti una mano
sicuramente risolutiva, dovrebbe essere Maurizio Borrelli che ho intravisto
in qualche post qualche ora fa'; ma probabilmente adesso sarà occupato, per
cui, porta pazienza e rimanda il tutto a domani; se una soluzione conosciuta
esiste qui la troverai certamente.
Auguri
Eliano
Mauro Gamberini
2005-07-09 07:53:55 UTC
Permalink
Post by Massimiliano
Mi hanno consigliato di usare uno script (che funziona), ora però dovrei
richiamare lo script da excel.
Potresti, gentilmente, postare *anche*
lo script?
Grazie.

Per lanciarlo una soluzione è questa:

Public Sub mEseguiScript()
Shell ("C:\winnt\system32\wscript.exe C:\m.vbs")
End Sub

Sostituendo a C:\m.vbs, la path ed il nome dello
script da eseguire. Testato con Windows2000 e XP,
non richiede l'aggiunta di riferimenti al progetto.
--
----------------------------
Mauro Gamberini
maurizio
2005-07-10 07:17:28 UTC
Permalink
Post by Massimiliano
Ora se esiste un'altra strada in excel per inviare e-mail con
O.E.(compreso
Post by Massimiliano
l'attach dei file) è graditissima, in mancanza mi faccio bastare lo script
(il problema però è come lanciarlo!!!!!) anche se non è "amorevole" come "I
love You" :-)
Massimiliano
Una possibile strada alternativa x l'invio di allegato con O.E., purtroppo
non sempre affidabile al 100% ed un poco aleatoria, è integrare i noti
comandi ActiveWorkbook.FollowHyperlink URL con le istruzioni di "SendKeys" e
tempi di attesa "Application.Wait" (con variabili attese di 4 secondi).

Il codice invia in allegato il file zippato 7Mgz.zip residente in C:\1opus\

Sub Email_O_E()

Dim URL, dest, body, subj As String
Dim Risposta As Byte

If Dir("C:\1opus\7Mgz.zip") = "" Then MsgBox "ATTENZIONE file 7Mgz.zip
ASSENTE!!!", vbCritical, "Error 7Mgz.zip": Exit Sub

Risposta = MsgBox("Preparazione invio mail" & Chr(13) & Chr(13) & "Vuoi
procedere?", vbYesNo + vbInformation + vbDefaultButton1, "Preparazione invio
mail")
If Risposta = vbNo Then Exit Sub

dest = "***@tiscali.it"
subj = "Magazzino del " & Now
body = "Ciao," & "%0A" & "eccoti i dati di Magazzino del " & Date & "
delle ore " & Time


URL = "mailto:" & dest & "?subject=" & subj & "&body=" & body
ActiveWorkbook.FollowHyperlink URL

TempoAttesa = TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 4)
Application.Wait TempoAttesa

SendKeys "%IA", True
SendKeys "C:\1opus\7Mgz.zip", True

TempoAttesa = TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 4)
Application.Wait TempoAttesa

SendKeys "%A", True
SendKeys "{TAB 5}", True
SendKeys "%FI", True

End Sub

Bye
Massimiliano
2005-07-11 07:18:42 UTC
Permalink
E' semplicemente perfetto!!!!!
e' praticamente la soluzione che avrei utilizzato usando lo script (solo che
poi avrei dovuto inventarmi un modo per passargli i valori contenuti nelle
colonne di excel);
come richiestomi posto lo script, ache se la tua soluzione a questo punto
taglia "la testa al toro":
Dim shell, passenger
Set shell = CreateObject("WScript.shell")
passenger = "C:\pippo.doc"
shell.Run "mailto:***@dominio.it?subject=Allegati&body=Prova"
WScript.Sleep 1000
shell.SendKeys "%i"
WScript.Sleep 300
shell.SendKeys "a"
WScript.Sleep 500
shell.SendKeys passenger
WScript.Sleep 200
shell.SendKeys "%a"
WScript.Sleep 300
shell.SendKeys "%s"


Grazie a tutti,
Massimiliano
Post by Massimiliano
Post by Massimiliano
Ora se esiste un'altra strada in excel per inviare e-mail con
O.E.(compreso
Post by Massimiliano
l'attach dei file) è graditissima, in mancanza mi faccio bastare lo script
(il problema però è come lanciarlo!!!!!) anche se non è "amorevole" come
"I
Post by Massimiliano
love You" :-)
Massimiliano
Una possibile strada alternativa x l'invio di allegato con O.E., purtroppo
non sempre affidabile al 100% ed un poco aleatoria, è integrare i noti
comandi ActiveWorkbook.FollowHyperlink URL con le istruzioni di "SendKeys" e
tempi di attesa "Application.Wait" (con variabili attese di 4 secondi).
Il codice invia in allegato il file zippato 7Mgz.zip residente in C:\1opus\
Sub Email_O_E()
Dim URL, dest, body, subj As String
Dim Risposta As Byte
If Dir("C:\1opus\7Mgz.zip") = "" Then MsgBox "ATTENZIONE file 7Mgz.zip
ASSENTE!!!", vbCritical, "Error 7Mgz.zip": Exit Sub
Risposta = MsgBox("Preparazione invio mail" & Chr(13) & Chr(13) & "Vuoi
procedere?", vbYesNo + vbInformation + vbDefaultButton1, "Preparazione invio
mail")
If Risposta = vbNo Then Exit Sub
subj = "Magazzino del " & Now
body = "Ciao," & "%0A" & "eccoti i dati di Magazzino del " & Date & "
delle ore " & Time
URL = "mailto:" & dest & "?subject=" & subj & "&body=" & body
ActiveWorkbook.FollowHyperlink URL
TempoAttesa = TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 4)
Application.Wait TempoAttesa
SendKeys "%IA", True
SendKeys "C:\1opus\7Mgz.zip", True
TempoAttesa = TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 4)
Application.Wait TempoAttesa
SendKeys "%A", True
SendKeys "{TAB 5}", True
SendKeys "%FI", True
End Sub
Bye
Continua a leggere su narkive:
Loading...