Excel 2003 e Excel 2007

41 views
Skip to first unread message

MARAIO RITA

unread,
Mar 7, 2012, 3:53:06 AM3/7/12
to Excel VBA
Ciao a tutti, avrei un quesito da porvi
l'istruzione qui sotto utilizzata in excel 2003 funzionava benissimo
ossia leggeva in un dato percorso e in una cartella il numero di file
txt presenti e mi inseriva successivamente il percorso ed il nome di
ogni singolo file txt nelle celle dalla a2 in poi
Passando ad utilizzare excel 2007 questo non funziona piu'
Qualcuno sa dirmi cosa bisogna fare per ovviare a questo problema?


-----------------------------------------------------
Application.DisplayAlerts = False
Dim MyFile, MyFileFound
MyFile = ActiveWorkbook.FullName
NUM = 0
On Error Resume Next
Set fs = Application.FileSearch
With fs
.LookIn = CurDir
.Filename = "*.TXT"
If .Execute() > 0 Then
For I = 1 To .FoundFiles.Count ' inizia il ciclo per iil
numero dei file trovati
MyFileFound = .FoundFiles(I)
If MyFileFound <> MyFile Then
Range("a" & NUM + 2) = MyFileFound
NUM = NUM + 1
End If
Next
End If
End With

Scossa

unread,
Mar 10, 2012, 12:02:33 PM3/10/12
to Excel VBA

Ciao,

Excel 2007 non supporta Application.FileSearch

Lillo

unread,
Mar 10, 2012, 4:05:27 PM3/10/12
to Excel VBA

On 10 Mar, 18:02, Scossa <scossa...@gmail.com> wrote:
> Ciao,
>
> Excel 2007 non supporta Application.FileSearch

Ciao Scossa.
Qui se ne parla:

http://social.msdn.microsoft.com/Forums/en/isvvba/thread/a450830d-4fc3-4f4e-aee2-03f7994369d6


()--cucchiaino

rita....@gmail.com

unread,
Mar 12, 2012, 6:12:07 AM3/12/12
to excel_v...@googlegroups.com
Grazie ma avreste un qualcosa di funzionante che faccia la stessa cosa per excel 2007?

r

unread,
Mar 12, 2012, 6:59:39 AM3/12/12
to Excel VBA
prova così:

Sub test()
Dim myPath, MyFileFound
Dim FSO As Object
Dim F As Object
Dim Fi As Object
Dim v, num As Long

Set FSO = CreateObject("Scripting.FileSystemObject")

Application.DisplayAlerts = False

myPath = ActiveWorkbook.Path

Set F = FSO.GetFolder(myPath)

For Each Fi In F.Files
If LCase(FSO.GetExtensionName(Fi.Path)) = "txt" Then
Range("a" & num + 2) = Fi.Path
num = num + 1
End If
Next
End Sub

saluti
r

Scossa

unread,
Mar 12, 2012, 7:27:42 AM3/12/12
to Excel VBA
Ciao Cucchiaino,

>
> http://social.msdn.microsoft.com/Forums/en/isvvba/thread/a450830d-4fc...

Si, avevo già letto, ma usando pochissimo Excel 2007 non ho mai
approfondito.

Bye!
scossa

rita....@gmail.com

unread,
Mar 14, 2012, 2:47:09 AM3/14/12
to excel_v...@googlegroups.com
grazie per l'aiuto , vi faro' sapere
 
 
 

Il giorno mercoledì 7 marzo 2012 09:53:06 UTC+1, MARAIO RITA ha scritto:

rita....@gmail.com

unread,
Mar 19, 2012, 7:13:49 AM3/19/12
to excel_v...@googlegroups.com
.....per r.
 
ho provato la tua soluzione e funziona benissimo.
grazie di nuovo per l''aiuto
Reply all
Reply to author
Forward
0 new messages