Dan z Waucondy položil tento týden Excel otázku.
Mám list aplikace Excel, který vypočítává hodnotu. Pokud je hodnota buňky> 100, potřebuji přehrát midi soubor.

Tento tip využívá obslužné rutiny událostí zde diskutované 23. prosince. Pokud nejste obeznámeni s obslužnými rutinami událostí, nejprve si prosím přečtěte tento tip.
Prvním krokem je vložit kopii souboru MIDI na místo, které není v cestě.
- Otevřete přehrávač médií WIN95. Programy> Příslušenství> Multimédia
- Otevřete vybraný midi soubor v přehrávači médií.
- V přehrávači médií vyberte Upravit a potom Kopírovat objekt.
- V aplikaci Excel vyhledejte neobvyklé umístění. V tomto příkladu vybírám Sheet1 Cell Z99. Klikněte sem a poté klikněte na Upravit> Vložit
- Podívejte se na pole s názvem v aplikaci Excel. V poli pro název bude soubor midi pojmenován. Důl se nazývá Objekt 1.
Makro VBA pro přehrání tohoto midi souboru je:
Sub Playit() ActiveSheet.Shapes("Object 1").Select Selection.Verb Verb:=xlPrimary End Sub
V závislosti na tom, zda máte Excel 97 nebo Excel 95 / 7.0, byste k vyvolání výše uvedeného kódu použili příslušnou obslužnou rutinu události. Zde je příklad pro Excel 97. Předpokládejme, že pokud je v buňce A1 zadána nová hodnota, chcete zkontrolovat, zda je vypočítaná buňka v A2> 100. Obslužná rutina události je následující:
Otevřete editor jazyka. V levém okně klikněte pravým tlačítkem na List1 a vyberte Zobrazit kód. V horní části dialogového okna Kód Book1 - List1 jsou dvě rozevírací nabídky. V rozbalovací nabídce vlevo vyberte Pracovní list. Z rozbalovací nabídky vpravo vyberte Změnit. Zadejte následující řádky kódu:
Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Target.Address = "$A$1" Then If Range("A2")> 100 Then ActiveSheet.Shapes("Object 1").Select Selection.Verb Verb:=xlPrimary End If End If End Sub