Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Excel VBA Error 70 + error 75

Ahoj, mám dvě otázky, mám makro které smaže všechny složky v adresáři obrázky

nicméně adresář obrázky má v sobě standartně i složky Camera Roll, a Uložené obrázky

když makro spustím dostanu chybu "error 70 permission denied"

předpokládám že proto, že potřebuju nějaké větší práva na smazání těchto původních podsložek, existuje nějaký kód, který by v případě potřeby otevřel dialogové okno s vyzváním uživatele, zda souhlasí se spuštěním makra jako administrátor?? žádné jiné řešení se změnou registrku apod. nechci

Druhá otázka zní, mám makro, které má vytvořit složku:

Sub vytvorslozku()
Mkdir "c:\Program Files\Common Files\NOVASLOZKA"
End Sub

úmyslně chci vytvořit složku někde v prkvančicích, ale dostanu Path/File access error (Error 75)

když dám Mkdir "c:\NOVASLOZKA" tak složku vytvoří v pohodě

nevíte prosím proč? opět práva? předem děkuji za odpovědi

jedná se o makra do seminárky do školy, nebudou šíreny internetem aby nějak škodili

Předmět Autor Datum
S makrama mám minimum zkušeností, ale tohle si myslím je klasický úkol pro normální program. V norm… nový
Flash_Gordon 22.04.2019 23:22
Flash_Gordon
Ahoj, díky za odpověď To řešení jaké tam uvádí funguje nejspíše jen ve starších verzích excelu naš… nový
Žadatel 22.04.2019 23:52
Žadatel
zde je celý kód jako obrázek poslední
Žadatel 22.04.2019 23:55
Žadatel

S makrama mám minimum zkušeností, ale tohle si myslím je klasický úkol pro normální program.

V normálním programu by to bylo mnohem snažší.
ODKAZ ZDE.

ShellExecute 0, "runas", "c:\folder\yourapp.exe", Command & "/admin", vbNullString, SW_SHOWNORMAL
Unload Me
Exit Sub
End If

Ahoj, díky za odpověď

To řešení jaké tam uvádí funguje nejspíše jen ve starších verzích excelu

našel jsem nějaké řešení, které tu funkci deklaruje už pro novější excel:

Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Const SW_SHOWNORMAL = 1

ShellExecute 0, "runas", "c:\folder\yourapp.exe", Command, vbNullString, SW_SHOWNORMAL

ovšem bez výsledku error : only commnets may appear after end sub, end function or end properly….

Zpět do poradny Odpovědět na původní otázku Nahoru