Hogyan lehet lejátszani egy hangot, ha egy feltétel teljesül az Excel programban?
Az Excelben alkalmazhatjuk a Feltételes formázást a cellák formázásához és kiemeléséhez, hogy megfeleljenek a feltételnek, amire szüksége van, de néha érdemes egy hangot lejátszani, ha egy feltétel teljesül. Például, ha az A1 cellájának értéke meghaladja a 300 értéket, akkor hangot akarok lejátszani. Az Excel nem támogatja ezt a funkciót, ezt a cikket, bemutatom néhány VBA kódot a feladat megoldására.
Játsszon alapértelmezett csipogó hangot a cellaérték alapján, VBA kóddal
Játsszon egyedi hangot a cellaérték alapján, VBA kóddal
Játsszon hangot, ha a cella értéke megváltozik egy adott oszlopban, VBA kóddal
Játsszon alapértelmezett csipogó hangot a cellaérték alapján, VBA kóddal
Itt van egy praktikus kód, amellyel lejátszhat egy alapértelmezett hangjelzést, ha egy adott feltétel teljesül. Kérjük, tegye a következőket:
1. Tartsa lenyomva a ALT + F11 gombokat, majd kinyitja a Microsoft Visual Basic for Applications ablak.
2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modulok Ablak.
VBA kód: Alapértelmezett csipogó hang lejátszása a cella értéke alapján:
Function BeepMe() As String
Beep
BeepMe = ""
End Function
3. Ezután mentse el és zárja be ezt a kódablakot, térjen vissza a munkalapra, és írja be ezt a képletet: = IF (A1> 300, BeepMe (), "") a cella melletti üres cellába azt az értéket tartalmazza, amely alapján hangot akarsz lejátszani, majd nyomd meg a belép kulcs, semmi nem jelenik meg a képlet cellában, lásd a képernyőképet:
4. És most, ha az A1 cellában megadott érték nagyobb, mint 300, akkor a rendszer alapértelmezett hangjelzést ad.
Játsszon egyedi hangot a cellaérték alapján, VBA kóddal
Ha más hangot szeretne lejátszani, mint az alapértelmezett hangjelzés, itt egy VBA-kód is szívességet tehet Önnek.
1. Tartsa lenyomva a ALT + F11 gombokat, majd kinyitja a Microsoft Visual Basic for Applications ablak.
2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modulok Ablak.
VBA-kód: Egy adott hang lejátszása egy cellaérték alapján:
#If Win64 Then
Private Declare PtrSafe Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As LongPtr, ByVal dwFlags As Long) As Boolean
#Else
Private Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Long, ByVal dwFlags As Long) As Boolean
#End If
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
Function SoundMe() As String
'Updateby Extendoffice 20161223
Call PlaySound("c:\windows\media\Speech On.wav", _
0, SND_ASYNC Or SND_FILENAME)
SoundMe = ""
End Function
3. Ezután mentse el és zárja be ezt a kódablakot, térjen vissza a munkalapra, és írja be ezt a képletet: = IF (A1> 300, SoundMe (), "")a cella melletti üres cellába azt az értéket tartalmazza, amely alapján hangot akarsz lejátszani, majd nyomd meg a belép kulcs, semmi nem jelenik meg a képlet cellában, lásd a képernyőképet:
4. Mostantól, ha 300-nál nagyobb értéket adunk meg az A1 cellába, akkor egy adott hang egyszerre szól.
Megjegyzések: A fenti kódban megváltoztathatja a hang wav fájlt az Ön igényeinek c: \ windows \ media \ fájl elérési út. Lásd a képernyőképet:
Játsszon hangot, ha a cella értéke megváltozik egy adott oszlopban, VBA kóddal
Ha hangot szeretne lejátszani, ha a cella értéke megváltozik egy adott oszlopban, alkalmazhatja a következő VBA kódot.
1. Kattintson jobb gombbal arra a lapfülre, amelyen hangot szeretne lejátszani, ha az oszlopban érték változik, majd válassza a Kód megtekintése a helyi menüből és a megnyitottból Microsoft Visual Basic alkalmazásokhoz ablakba másolja és illessze be a következő kódot az üres modulba:
VBA kód: Hang lejátszása, ha a cella értéke megváltozik egy oszlopban:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20161223
Dim xCell As Range
On Error Resume Next
If Target.Columns.Count = 1 Then
If Intersect(Target, Columns(3)) Is Nothing Then
Exit Sub
Else
For Each xCell In Columns(3)
On Error Resume Next
If (xCell.Value = Target.Value) And (xCell.Value <> "") Then
Beep
Exit For
End If
Next
End If
End If
End Sub
Megjegyzések: A fenti kódban a szám 3 a forgatókönyvben Oszlopok (3) annak az oszlopnak a száma, amelyet lejátszani szeretne, ha az érték megváltozik ebben az oszlopban.
2. Ezután mentse el és zárja be ezt a kódablakot, ha most a cella értéke megváltozik a harmadik oszlopban, akkor a rendszer alapértelmezett hangjelzést ad.
A legjobb irodai hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját
- Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
- Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
- 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!