Newsgroup: it.comp.appl.access
Titolo: WriteLine file di testo per VBS

Ciao,
Utilizzo questo modulo per controllare all'interno di una cartella i
files + vecchi o modificati, in funzione
ai criteri stabiliti li sposto in un altra destinazione. alla fine
creo un file di log per verifica.
Tutto funziona bene sia con Access e VB 6.
Adesso, vorrei esportare il suddetto modulo in un file VBS.
In questo modo evito di installare Access su un altro pc. E da
operazioni pianificate posso gestire al meglio il job.
il modulo.bas
Sub MovefilExt()
' Preleva tutti i files nella directory
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set folderObject = fso.GetFolder("X:\norme\")
  Set filesObject = folderObject.Files
' Definisci un intervallo di controllo in questo caso DATE "d"
  Interval = 45
' Dalla collection files controlla se ci sono file
  For Each file In filesObject
' Se ci sono file
     If fso.GetExtensionName(file) = "PDF" Then
' Controlla la data di ultima modifica
    If DateDiff("d", file.datelastmodified, Now) >= Interval Then
    Dim percors As String
    percors = "X:\archivio\"
    Dim dd, file1 As String
    dd = Date
    file1 = "." & dd & "." & file
 'scrittura
    Open ("X:\history.log") For Append As #1
     ' scrivi
     Print #1, file1 & "." & file.Name & " da " & DateDiff("d",
file.datelastmodified, Now)
      Close #1
    'Move File in Folder
     fso.MoveFile (file), percors
     Else
    'Visualizza
    Debug.Print file
             End If
       End If
  Next
  Set fileObject = Nothing
  Set folderObject = Nothing
  Set fso = Nothing
End Sub
' fine
Da MSD ho trovato questa spiegazione ma non ho ancora trovato la
soluzione questo è il link:
http://msdn2.microsoft.com/en-us/library/t5399c99.aspx
Qualche suggerimento, si può fare?.
Grazie
.Bat

 ha scritto nel messaggio 
news:1185314038.3...@g4g2000hsf.googlegroups.com...












     Else
    'Visualizza
    Debug.Print file
             End If
       End If
  Next

End Sub


[risposta]
Dove hai trovato difficoltà?
Ciao.
-- 
Sergio MAZZA 

 ha scritto nel messaggionews:1185314038.3...@g4g2000hsf.googlegroups.com...

Ciao Sergio,
la dificoltà l'ho trovata subito. Ho copiato il modulo.bas all'interno
del file MoveFile_pdf.vbs e posto a desktop
da doppio click si blocca con error di VB. alla riga Dim percors.
Sto leggendo il manuale se ho capito bene, non è possibile utilizzare
diversi comandi tipo Open, Print.
.Bat

 ha scritto nel messaggio 
news:1185348419.4...@k79g2000hse.googlegroups.com...
Ciao Sergio,
la dificoltà l'ho trovata subito. Ho copiato il modulo.bas all'interno
del file MoveFile_pdf.vbs e posto a desktop
da doppio click si blocca con error di VB. alla riga Dim percors.
Sto leggendo il manuale se ho capito bene, non è possibile utilizzare
diversi comandi tipo Open, Print.
.Bat
[risposta]
Nella dichiarazione delle variabili non hai bisogno di dichiararne il tipo:
es.
Dim percors As String
(diventa)
Dim percors
La gestione dei file di testo la fai tramite il metodo OpenTextFile:
es.
   Const ForReading = 1, ForWriting = 2, ForAppending = 8
   Dim fso, f
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.OpenTextFile("c:\fileprova.txt", ForWriting, True)
   f.Write "Salve gente!"
   f.Close
Ciao.
-- 
Sergio MAZZA 

 ha scritto nel messaggionews:1185348419.4...@k79g2000hse.googlegroups.com...

Grazie Sergio per il suggerimento.
Sembra funzionare, in pratica sostituisco le righe riferite a open,
print con queste :
Dim fso, f
   'Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.OpenTextFile("X:\history.log", 8, True)
   f.Write file1 & ("." & file.Name & " da " & DateDiff("d",
file.datelastmodified, Now)) & VbCrlF
   f.Close
- -
Ciao
.Bat