< návrat zpět

MS Excel


Téma: Vytvoření složky a podsložky na základě hodnot rss

Zaslal/a 4.6.2013 12:40

Ahoj, potřeboval bych poradit, mám makro, které mi vytváří složku na základě hodnot dvou buněk.

Sub VyvorSlozku()
Dim xdir As String
Dim FSO
Dim lstrow As Long
Dim i As Long
Set FSO = CreateObject("Scripting.FileSystemObject")
lstrow = ActiveSheet.Cells(ActiveSheet.Rows.Count, "D").End(xlUp).Row
Application.ScreenUpdating = False
For i = 1 To lstrow
xdir = "C:\" & Range("D" & i).Value & " - " & Range("F" & i).Value
If Not FSO.FolderExists(xdir) Then
FSO.CreateFolder (xdir)
End If
Next
Application.ScreenUpdating = True
End Sub

Ale potřeboval bych do tohoto makra vytvořit proceduru, která by ve vytvořené složce vytvořila podsložku s pevně daným názvem. např "subfolder".

Tzn. vytvoř složku na základě hodnot v buňce D + F a v této složce vytvoř podsložku s názvem "subfolder".

Děkuji za radu.

stop Uzamčeno - nelze přidávat nové příspěvky.

icon #013651
eLCHa
Sub VyvorSlozku2()
Dim xdir As String
xdir = "C:\Users\User\Test"

On Error Resume Next
MkDir xdir
If Err.Number = 0 Then
MkDir xdir & "\SubFolder"
End If
On Error GoTo 0
End Sub
citovat
#013655
avatar
Díky, ale nevím jak to rozchodit? Nevidím tam definované podle jakých složky se má vytvořit název složky? Možná proto se mi ani nic nevytvoří :-)

Díky..citovat
icon #013658
eLCHa
Pokud jste si neupravil
xdir = "C:\Users\User\Test"
na existující adresář, taxe nic nevytvoří, protože neví kde ;)

Zkusil jsem přepsat váš kód, ale nemůžu otestovat - bez přílohy
Sub VyvorSlozku()
Dim xdir As String
Dim lstrow As Long
Dim i As Long
lstrow = ActiveSheet.Cells(ActiveSheet.Rows.Count, "D").End(xlUp).Row
For i = 1 To lstrow
xdir = "C:\" & Range("D" & i).Value & " - " & Range("F" & i).Value
On Error Resume Next
MkDir xdir
If Err.Number = 0 Then 'když existuje, jde dál
MkDir xdir & "\SubFolder"
End If
On Error GoTo 0
Next
End Sub
citovat
#013664
avatar
Adresu jsem si samozřejmě upravil :-)

Tak to už to funguje správně i s podsložkou. Jak jednoduché, jen vědět jak na to. :-)

Díky moc.citovat
#013667
avatar
Věděl by jsi ještě jak udělat aby makro začínalo až od 3. řádku?

Chtěl jsem je definovat jako D3, ale to se mu moc nelíbí.

Děkuji.citovat
icon #013668
eLCHa
For i = 3 To lstrowcitovat
#013674
avatar
6 6 :-)

Děkuji!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

odpocet a storno tl.

PavDD • 28.3. 8:53

odpocet a storno tl.

Začátečník • 26.3. 14:39

odpocet a storno tl.

PavDD • 26.3. 10:22

odpocet a storno tl.

elninoslov • 26.3. 7:50

odpocet a storno tl.

PavDD • 26.3. 7:26

odpocet a storno tl.

elninoslov • 25.3. 22:34

odpocet a storno tl.

Začátečník • 25.3. 15:09