< návrat zpět
MS Excel
Téma: obecná cesta k ploše
Zaslal/a abcd1234 8.2.2015 19:14
Ahoj, potřebuji makro, které ukládá soubor na plochu uživatele. Jak mám zadat univerzální cestu tak, aby fungovala na více strojích? Problém je v tom, že každý má jiné uživatelské jméno. Ve w7 např. C:\Users\???\Desktop.
Pavlus(8.2.2015 19:33)#023532 Ke zjištění uživatelského jména lze využít funkci Environ.
P.
Př.:
prihlaseny_uzivatel = Environ("UserName")citovat
AL(8.2.2015 20:30)#023534 Userprofile je asi vhodnejší než UserName
Sub NajdiPlochu()
Dim fs As Object, f As Object
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = Nothing
On Error Resume Next
Set f = fs.GetFolder(Environ("userprofile") & "\Desktop")
On Error GoTo 0
If Not f Is Nothing Then
MsgBox "Cesta k ploche: " & f.Path
Else: MsgBox "Cesta k ploche nema tvar C:\Users\???\Desktop"
End If
End Sub
edit: Toto je ešte lepšie:
Sub najdiplochu1()
MsgBox CreateObject("WScript.Shell").specialfolders("Desktop")
End SubČerpané z:
http://stackoverflow.com/questions/17551238/vba-how-to-save-excel-workbook-to-desktop-regardless-of-user. Nájsť na googli trvá asi 10 sekúnd
citovat