WWW pro školy
Jak na Office - tutoriály, video návody











Vytvoř si  geekové tričko

Poradna - Určení podmínky pro spuštění Makra

hlavní kategorie | zpět | + odpovědět na toto téma
Určení podmínky pro spuštění Makra - diskuze na toto téma
Dobrý den, sháním pomoc, pro mnohé z Vás asi snadnou, ale řeším problém: - mám v excel tabulce tlačítko, které spouští makro ( to makro mi ukládá, zapisuje na jiný list a po uložení smaže hodnoty ) - potřebuji zajist, aby se to makro nespustilo a nejlíp vyhodilo chybové hlášení v případě, že buňka E16=NEPRAVDA. V případě, že buňka E16=PRAVDA, makro se dá spustit. To je vše, snad mi někdo pomůže, moc děkuji za jakoukoliv radu.

Lobo | 5.12.2017 17:52  
 
 
Možností je vícero, viz soubor. Buď na začátku makra testovat hodnotu buňky E16 a pokud nevyhovuje opustit makro, nebo na základě hodnoty buňky E16 povolit nebo zakázat funkčnost tlačítka, které makro spouští. V souboru buňka A1=1 -> E16 = PRAVDA jinak NEPRAVDA
Odpověď
Luboš | 6.12.2017 07:42  
 
 
Pane Lobo, jste skvělý, moc děkuji, to je úplně přesně co potřebuji!!! Opravdu si vážím, že někdo takhle nezjištně pomáhá! Velké díky! Kdybych Vám mohl někdy pomoct, jsem strojař, ozvěte se na devata2003@seznam.cz. Hezký den
Odpověď
Luboš | 6.12.2017 08:41  
 
 
Pane Lobo, omlouvám se ještě jednou, ale nevím co je špatně. Přikládám soubor, kde mám tlačítko ale když k němu přiřadím makro2 které je u toho, tak mi to háže chybu v tom zápisu makra. Ale samo o sobě to makro funguje, zapisuje mi kalkulaci na jiný list. Mohl byste prosím na to mrknout jestli Vás nenapadne, kde je chyba? Potřebuji, aby se spustilo to Makro kliknutím na tlačítko a to jen v případě, že E16 bude PRAVDA, jinak chyba. Moc děkuji a omlouvám se za otravování.
Odpověď
Lobo | 6.12.2017 19:06  
 
 
Ahoj, na netu si tykáme. Tedy bez toho pane :-). Jinak díky za nabídku protislužby. Kvůli tomu to nedělám, ale nabídka potěší. Nevím jaká forma přerušení makra byla požadována. Udělal jsem obě + do kódu doplněn zákaz překreslování obrazovky, aby nedocházelo k blikání při běhu makra. Možná by stálo za to ten kód upravit, aby se hodnoty do dalšího listu propisovaly bez kopírování.
Odpověď
Lobo | 6.12.2017 19:07  
 
 
Ještě ten druhý soubor.
Odpověď
Lobo | 7.12.2017 22:49  
 
 
V souboru doplněno makro "evidence", které vkládá hodnoty přímo bez kopírování.
Odpověď
elninoslov | 11.12.2017 12:20  
 
 
Ja by som aj tie Offset-y vynechal: Sub Evidence2() With List1 If .Range("E16").Value = False Then MsgBox "Nejsou vyplněna všechna požadovaná pole. Kopírování bude přerušeno!" & vbNewLine & _ "Vyplňte požadovaná pole a akci opakujte!", vbCritical, "VAROVÁNÍ" Exit Sub End If If Not IsEmpty(List2.Range("A3").Value) Then List2.Range("A3").EntireRow.Insert CopyOrigin:=xlFormatFromRightOrBelow List2.Cells(3, 1).Resize(, 9).Value2 = Array(.Range("C6").Value, .Range("C4").Value, .Range("C5").Value, .Range("C12").Value, .Range("C13").Value, .Range("H6").Value, .Range("H9").Value, .Range("H11").Value, .Range("C2").Value) .Range("C4:C15,H11").ClearContents End With End Sub
Odpověď
elninoslov | 11.12.2017 13:12  
 
 
Formátovanie by tu mali podstatne prekopať ... Prikladám 2 príklady. Evidence2 - zapisuje naraz, teda nie po jednom údaji. Evidence - zapisuje aj číta naraz a nepotrebujete bunku E16.
Odpověď
Luboš | 11.12.2017 15:27  
 
 
Přátelé, vy se mi snad zdáte!!! Obrovské poděkování, nemám slov. Je to naprosto dokonalé, nabídka protislužby (něco vysoustružit, ofrézovat) platí a je časově neomezená, budu rád nápomocen!!! Vím, že to děláte pro zábavu, ale moc jste mi pomohli. Upřímný DÍK!!!! Přeji příjemné Vánoce, Luboš ( devata2003@seznam.cz)
Odpověď