< návrat zpět

MS Excel


Téma: VBA - automatické spuštění makra dle uživatele rss

Zaslal/a 10.12.2018 23:36

Zdravím všechny,
potřebuji pomoc s makrem. Zároveň musím říct, že v tom nejsem moc dobrý a většinou hledám makra, která následně spojuji, abych dosáhl výsledku. Proto se obracím na Vás tady.

Co by mělo být výsledkem?

Potřeboval bych makro, které při otevření sešitu spustí požadovaná makra dle rozpoznaného uživatele - Username (Josef Novak - vždy dle registrace).

To spustí makra dle uživatele, např. u rozpoznaného uživatele Josef Novák spustí makro 1, které schová list 1 a 2 a nechá zobrazený list 3 a 4.
U jiného uživatele, např. Katerina Nova spustí makro2 a schová list 3 a 4 a zobrazí 1 a 2.

Ovšem před spuštěním makra se to zeptá, zda opravdu chci spustit dle uživatele Josef Novak. Dvě možnosti - ano - spustí makro, ne - zůstane na listu 1.

Pokud uživatele nerozpozná (přihlásí se někdo jiný, než je mnou definováno) vyskočí např. MsgBox "Přístup zamítnut, volej L.129" a zůstane na prvním listu a nespustí žádné makro.

Jde toto nějak řešit?

Moc děkuji za každou radu.

Pavel

Zaslat odpověď >

#042100
avatar
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
List2.Visible = xlSheetVeryHidden
List3.Visible = xlSheetVeryHidden
End Sub

Private Sub Workbook_Open()
Dim user_name As String: user_name = Environ("USERNAME")
Dim ret As Integer: ret = MsgBox("Chcete větší plat?", vbYesNo, "Plat")

If ret <> vbYes Then Exit Sub

Select Case user_name
Case "Sejnoha"
List2.Visible = xlSheetVisible
List3.Visible = xlSheetVisible
Case "Novak"
List2.Visible = xlSheetVisible
List3.Visible = xlSheetVeryHidden
Case Else
List2.Visible = xlSheetVeryHidden
List3.Visible = xlSheetVeryHidden
End Select
End Subcitovat
#042237
avatar
Moc děkuji, to je přesně ono.
Ještě mám jeden dotaz, lze přidat kód, tak aby to u USERNAME neřešilo velká a malá písmena?

Děkuji.

Pavelcitovat
#042238
Stalker
toto:
user_name = Environ("USERNAME")

nahraď tímto:
user_name = LCase(Environ("USERNAME"))

a všechna jména uživatelů v kódu napiš malými písmeny.citovat
#042239
avatar
Super moc děkuji.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