Dan a Waucondából tette fel az e heti Excel kérdést.
Van egy Excel munkalapom, amely kiszámítja az értéket. Ha a cella értéke> 100, akkor egy midi fájlra van szükségem.

Ez a tipp az itt december 23-án tárgyalt eseménykezelőket használja. Ha nem ismeri az eseménykezelőket, kérjük, először olvassa el ezt a tippet.
Első lépésként illessze be a MIDI fájl egy példányát a munkalapon elterjedt helyre.
- Nyissa meg a WIN95 médialejátszót. Programok> Kiegészítők> Multimédia
- Nyissa meg a kiválasztott midi fájlt a médialejátszóban.
- A médialejátszóban válassza a Szerkesztés, majd az Objektum másolása lehetőséget.
- Az Excel programban keresse meg az útvonalon kívüli helyet. Ebben a példában a Sheet1 Cell Z99-et választom. Kattintson ide, majd kattintson a Szerkesztés> Beillesztés gombra
- Nézze meg az Excel névmezőjét. A név mezőben megadja a midi fájl nevét. Az enyém az 1. objektum.
A VBA makró a midi fájl lejátszásához:
Sub Playit() ActiveSheet.Shapes("Object 1").Select Selection.Verb Verb:=xlPrimary End Sub
Attól függően, hogy van-e Excel 97 vagy Excel 95 / 7.0, a megfelelő eseménykezelőt használja a fenti kód meghívására. Itt van egy példa az Excel 97-re. Tegyük fel, hogy ha új értéket adunk meg az A1 cellában, akkor ellenőrizni kell, hogy az A2 kiszámított cellája> 100-nál nagyobb-e. Az eseménykezelő a következő:
Nyissa meg a Visual Basic Editor alkalmazást. A bal oldali ablakban kattintson a jobb gombbal a Sheet1 elemre, és válassza a Kód megtekintése lehetőséget. A Book1 - Sheet1 Code párbeszédpanel tetején két legördülő menü található. A bal oldali legördülő menüből válassza a Munkalap lehetőséget. A jobb oldali legördülő menüből válassza a Módosítás lehetőséget. Írja be a következő kódsorokat:
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