< návrat zpět

MS Excel


Téma: Procházení všech souborů v adresáři rss

Zaslal/a 22.5.2014 18:07

Zdravím,
dá se nějakým cyklem projít všechny soubory v adresáři a pokud název vyhovuje podmínce, tak ho otevřít? Např. chci otevřít všechny soubory v adresáři "ABC", jejichž název začíná "A...".

Zaslat odpověď >

#019618
avatar
třeba takto:Dim FilePath As String, xFile As String, FileSpec As String
FilePath = "C:\ABC\"
FileSpec = "*.xlsx"
xFile = Dir(FilePath & FileSpec)
Do Until xFile = vbNullString
If Left(xFile, 1) = "A" Then Workbooks.Open (FilePath & xFile)
xFile = Dir
Loop
citovat
icon #019619
avatar
Keď už som to spytlíkoval, tak to sem tiež dám :)Sub OtvorSuboryVadresari()
Dim fldr As FileDialog, sItem As String, strF As String, wb As Workbook
Set fldr = Application.FileDialog(msoFileDialogFolderPicker)
With fldr
.Title = "Vyber adresar"
.AllowMultiSelect = False
' .InitialFileName = strPath
If .Show <> -1 Then
MsgBox "Nezvolil si adresar"
GoTo Label_1
Else: sItem = .SelectedItems(1)
End If
End With
strF = Dir(sItem & "\A*.xl*")
Do While strF <> vbNullString
Set wb = Workbooks.Open(sItem & "\" & strF)
strF = Dir()
Loop
Set wb = Nothing
Label_1:
Set fldr = Nothing
End Sub
citovat
#019659
avatar
Děkuji, použil jsem to od KP, ale mám ještě jeden problém. Po zpracování souboru, který vyhovuje podmínce (název "A",jej potřebuji přejmenovat tak, aby už podmínce nevyhovolal např. na "xA".citovat
icon #019663
avatar
Šlo by to napr. takto:
Niekde za If Left(xFile, 1) = "A" Then Workbooks.Open (FilePath & xFile), t.j. v momente, kedy bude daný workbook ešte aktívny, ale až po tom, čo ho už spracuješ, volaj nasledujúcu rutinu:Sub Premenuj()
Dim wb As Workbook, oldName As String
Set wb = ActiveWorkbook
With wb
oldName = .Path & "\" & .Name
.SaveAs Filename:="x" & .Name
End With
Kill oldName
Set wb = Nothing
End Sub
alebo takto:Sub Premenuj1()
Dim wb As Workbook, oldName As String, newName As String
Set wb = ActiveWorkbook
With wb
oldName = .Path & "\" & .Name
newName = .Path & "\x" & .Name
.Close
End With
Name oldName As newName
Set wb = Nothing
End Sub
citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse

Čas od do

lubo • 19.4. 16:30

Makro smyčka

MilanKop • 19.4. 10:46

Makro smyčka

elninoslov • 19.4. 9:02

Čas od do

elninoslov • 19.4. 8:46

Čas od do

jarek1111 • 18.4. 13:46

Čas od do

lubo • 18.4. 11:13

Čas od do

jarek1111 • 18.4. 8:32