
Platí pro Excel 2003
- v Excelu ALT+F11
- V levo musí být okno "VBA Project" nebo mačkej CTRL + R
- Naklepej svůj sešit a v něm "ThisWorkbook"
- Nahoře jsou dva rozbalovací seznamy. V levém je (General) ... změň jej na Workbook
- V pravém si najdi "Open"
Vygeneruje se ti prázdná procedura Open ... dopiš do ní co potřebuješ ... tj spuštění formsu.
Private Sub Workbook_Open()
' Pozdrav při spuštění
MsgBox "Hallo world"
' Spuštění jiné procedury v jiném modulu (otevření formsu)
Module1.MojeProcedura
End Sub
Jednodužší je na makro nastavit kombinaci kláves a pak spouštět kdykoliv forms přes zkratkové klávesy. R.

Pokud by jste chtěl makro spustit na konkrétním listu, tak ve "VBA Project" zvolte list a do níže uvedené události zadejte Váš kód.
Private Sub Worksheet_Activate()
End Sub

no, asi bude nejlepsi, kdyz vlozis soubor, protoze z toho popisu nikdo poradne neodhadne, co vlastne potrebujes pri jake udalosti spustit, jestli je to UserForm nebo primo nejakou proceduru, apod...

To se poddá ... aby ses taky něco naučil a né jen stupidně odevzdat a získat opravu, je vhodné si toto udělat sám. Je to velmi jednoduché.
Kontroluj si co děláš ... a postupuj podle návodu.
Udělal sis na makra Modul1 ... dobrá. V modulu oprav proceduru takto
Sub stahovací1_Změnit()
DialogSheets("Formulář škody").Show
End Sub
Najdi si okénko "VBA project"
Najdi v okně "VBA project" "ThisWorkbook"
Najdi v rozbalovacím seznamu "ComboBox(y)" výběr Workbook a Open - jak je psáno výše.
Vygeneruje se Ti prázdná procedura Workbook_Open do které vložíš volání procedury v "Modul1"
Private Sub Workbook_Open()
Call Module1.stahovací1_Změnit
End Sub
Nakonec si najdi v "MENU Excelu" dialog s Makry a nastav si zkratkovou klávesu pro vyvolání dialogu v době kdy to potřebuješ TY jako user a né jen při otevření sešitu.
Pak si vlož do listu, kde se ti zlíbí, malý obrázek a přiřaď mu makro stahovací1_Změnit. Uvidíš že se Ti to bude líbit.
Pak si uvědomíš, že dialog vlastně nemusíš vidět, a že je hezčí, když uvedený list prostě skryješ.
Vítej v klubu ...

Hned jsem zkusil dle navodu, ale nekde mam asi chybku. Po kliknuti na obr. se objevi nejaka chyba viz. foto. prosim o pomoc. otazecka: v makru jsou dva moduly, zapsal jsem to do mudulu1

Tak ted bohuzel foto nezaslu, pres tel. je to problem. tak zkusim vysvetlit. pri kliknuti na obr. se objevi dialog Run-time error 9, subscript out of range, kliknu na debug, otevre se mi makro se zlute oznacenym radkem DialogSheets("Formulář škody").show. je to v okne s nazvem seznam materialu.xls - Module1 (Code)

Zkusíme něco jiného.
V Excelu (2003) si najdiv Menu Nástroje->Makro->Makra (Nebo Alt+F8). V seznamu najdi jméno makra "stahovací1_Změnit" a jednou na něj klepni. Pak klepni na tlačítko Možnosti a stiskni "SHIFT + B". Pak to všechno potvrď a zavři. Na kterémkoliv listě zkus spustit kombinaci CTRL+SHIFT+B. Pokud se Ti nic nezobrazí, nebo to skončí chybou, pak se podívej na jména listu v sešitě a v makru ... jestli jsi v mezidobí nepřejmenoval listy :( Taky bych doporučil odstranit diaktriku v názvu procedury. R.