< návrat zpět

MS Excel


Téma: Vytvoření složky pomoci makra rss

Zaslal/a 30.1.2015 12:49

Zdravim,

potřeboval bych pomoci existuje nějaké makro, které by při stisknutí tlačítka v sešitu vytvořilo složku s názvem který je třeba v buňce "a1" a když už bude složka existovat aby si ji dále nevšímala?

Zaslat odpověď >

#023363
avatar
Třeba takto. A je cesta. B je vytvářený adresář
Sub VytvorAdresar()
Dim A As String
Dim B As String

A = "C:\Users\JF\Desktop\wall\"
B = Range("A1")

If Len(Dir(A & B, vbDirectory)) = 0 Then
MkDir A & B
MsgBox "Adresář vytvořen."
Else: MsgBox "Adresář existuje."
End If

End Sub
citovat
#023364
avatar
Super, děkuji moc to jsem přesně potřeboval :)citovat
#033358
avatar
Když bych chtěl vytvořit složky ze sloupce A1 až A100 vypadalo by to takto?

Sub VytvorAdresar()

Dim A As String

Dim B As String

A = "C:\Users\JF\Desktop\wall\"

B = Range("A1:A100")

If Len(Dir(A & B, vbDirectory)) = 0 Then

MkDir A & B

MsgBox "Adresář vytvořen."

Else: MsgBox "Adresář existuje."

End If

End Subcitovat
#033365
avatar
Zkusil bych to takto:
Sub VytvorAdresar()

Dim A As String
Dim B As String
Dim i As Long

A = "C:\Users\JF\Desktop\wall\"

For i = 1 To 100

B = Range("A" & i)

If Len(Dir(A & B, vbDirectory)) = 0 Then

MkDir A & B

'MsgBox "Adresář vytvořen."

Else: MsgBox "Adresář " & B & " již existuje."

End If

Next i
MsgBox "Hotovo"
End Sub
citovat
#033375
avatar
Díky supr funguje, až na to když všechny buňky 1-100 obsahují data. Když je buňka prázdná zacyklí se to.citovat
#033380
avatar
Tak je pravda, že s touhle variantou sem nepočítal.
Sub VytvorAdresar()

Dim A As String
Dim B As String
Dim i As Long

A = "C:\Users\JF\Desktop\wall\"

For i = 1 To 100

B = Range("A" & i)

If IsEmpty(Cells(i, 1)) Then
On Error GoTo dalsi
Else
If Len(Dir(A & B, vbDirectory)) = 0 Then
MkDir A & B
'MsgBox "Adresář vytvořen."
Else: MsgBox "Adresář " & B & " již existuje."
End If
End If

dalsi:
Next i
MsgBox "Hotovo"
End Sub
citovat
#033381
avatar
Díky teď je to ono :-)citovat
#045352
avatar
A když to budu chtít ještě trochu zesložitit, Mám A1 Jakub a B1 001, A2Jakub a B2 je 002. Potřebuju aby se vytvořila složka Jakub a do ní složka 001. Popřípadě že už složka jakub bude existovat aby se vytvořila jen složka 002 do složky jakub.

Mockrát díkycitovat
#045354
Merlin99
Pěkný DÍKY 5citovat
#045355
Začátečník

Borek0495 napsal/a:

A když to budu chtít ještě trochu zesložitit,...

S použitím výše uvedeného třeba:
Sub VytvorAdresar()

Dim A As String
Dim B As String
Dim C As String
Dim i As Long

A = "C:\Users\JF\Desktop\wall\"

For i = 1 To 100
B = Cells(i, 1)
If B <> Empty Then
If Len(Dir(A & B, vbDirectory)) = 0 Then
MkDir A & B
' MsgBox "Adresář vytvořen."
Else
MsgBox "Adresář " & B & " již existuje."
End If

C = Cells(i, 2)
If C <> Empty Then
If Len(Dir(A & B & C, vbDirectory)) = 0 Then
MkDir A & B & C
' MsgBox "Podadresář vytvořen."
Else
MsgBox "Adresář " & B & C & " již existuje."
End If
End If
End If
Next i

MsgBox "Hotovo"

End Sub

citovat

Uživatelské menu

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

Menu

Formulář Faktura

Formulář Faktura IV

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

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje