Zdravím.
Jak zajistit, aby makro šlo spustit jen pokud je v sešitu List1. (Pokud List1 chybí napíše hlášku)
Spuštění makra pod podmínkou
Moderátor: Mods_senior
Re: Spuštění makra pod podmínkou
Kód: Vybrat vše
Sub TestListu()
Dim List As Worksheet
Dim Existuje As Boolean
For Each List In ThisWorkbook.Worksheets
If List.Name Like "List1" Then
Existuje = True
Exit For
End If
Next List
If Existuje = False Then
MsgBox "List ""List1"" neexistuje!" & vbNewLine & "Makro bude ukončeno!", vbCritical, "Chyba"
Exit Sub
End If
MsgBox "KONEC MAKRA", vbInformation, "Vše maká"
End Sub
Které si nastavíš v editoru VBA v okně Properties (Name) a v kódu se odkazuješ na toto jméno. Toto jméno (CodeName) je nezávislé na jméně, které se objevuje na oušku listu v prostředí excelu. Uživatel si pak může jméno listu na oušku libovolně měnit bez negativních dopadů na kód makra.
Re: Spuštění makra pod podmínkou
Tohle je super. Funguje na jedničku.
Šlo by jestě prosím doplnit aby pokud bude hodnota v Listu3 bunce D2 větší než 1 makro nahlásilo hlášku a nic neprovádělo?
Děkuji
Šlo by jestě prosím doplnit aby pokud bude hodnota v Listu3 bunce D2 větší než 1 makro nahlásilo hlášku a nic neprovádělo?
Děkuji
Re: Spuštění makra pod podmínkou
Do kódu přidáš jen další podmínku
Kód: Vybrat vše
Sub TestListu()
Dim List As Worksheet
Dim Existuje As Boolean
For Each List In ThisWorkbook.Worksheets
If List.Name Like "List1" Then
Existuje = True
Exit For
End If
Next List
If Existuje = False Then
MsgBox "List ""List1"" neexistuje!" & vbNewLine & "Makro bude ukončeno!", vbCritical, "Chyba"
Exit Sub
End If
If Worksheets("List3").Range("D2").Value > 1 Then
MsgBox "Hodnota na listu ""List3"" je mimo povolený rozsah!" & vbNewLine & "Makro bude ukončeno!", vbCritical, "Chyba"
Exit Sub
End If
MsgBox "KONEC MAKRA", vbInformation, "Vše maká"
End Sub
Re: Spuštění makra pod podmínkou
Špica, funguje bez chyb. Moc děkuju za pomoc.
-
- Podobná témata
- Odpovědi
- Zobrazení
- Poslední příspěvek

