Hoppa till huvudinnehåll
 

Hur spelar jag ett ljud om ett villkor uppfylls i Excel?

Författare: Xiaoyang Senast ändrad: 2024-08-08

I Excel kan vi använda villkorlig formatering för att formatera och markera cellerna för att uppfylla villkoret som du behöver, men ibland kanske du vill spela ett ljud om ett villkor är uppfyllt. Till exempel, om cellvärdet i A1 är större än 300, vill jag att ett ljud spelas. Excel stöder inte den här funktionen, den här artikeln, jag kommer att introducera några VBA-koder för att lösa denna uppgift.

Spela upp ett standardljud från systemet baserat på cellvärde med VBA-kod

Spela ett anpassat ljud baserat på cellvärde med VBA-kod

Spela upp ett ljud om cellvärdet ändras i en viss kolumn med VBA-kod


Spela upp ett standardljud från systemet baserat på cellvärde med VBA-kod

Här är en praktisk kod för dig att spela ett standardljud för systempip när ett specifikt villkor är uppfyllt, gör så här:

1. Håll ner ALT + F11 och sedan öppnas Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i Modulerna Fönster.

VBA-kod: Spela ett standardlyd för systempip baserat på ett cellvärde:

Function BeepMe() As String
    Beep
    BeepMe = ""
End Function

3. Spara och stäng sedan kodfönstret, gå tillbaka till kalkylbladet och ange den här formeln: = IF (A1> 300, BeepMe (), "") i en tom cell bredvid cellen innehåller det värde du vill spela ett ljud baserat på och tryck sedan på ange nyckel, ingenting visas i formelcellen, se skärmdump:

en skärmdump som visar hur man spelar standardljud för systempip när ett cellvärde matchar ett visst villkor

4. Och nu, om det inmatade värdet i cell A1 är större än 300, kommer ett standardljud från systemet att spelas upp.


Spela ett anpassat ljud baserat på cellvärde med VBA-kod

Om du vill spela något annat ljud än standardsystemets ljud, här kan också en VBA-kod göra dig en tjänst.

1. Håll ner ALT + F11 och sedan öppnas Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i Modulerna Fönster.

VBA-kod: Spela ett specifikt ljud baserat på ett cellvärde:

#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. Spara och stäng sedan kodfönstret, återgå till kalkylbladet och ange den här formeln: = IF (A1> 300, SoundMe (), "")i en tom cell bredvid cellen innehåller det värde du vill spela ett ljud baserat på och tryck sedan på ange nyckel, ingenting visas i formelcellen, se skärmdump:

en skärmdump som visar hur man spelar ett anpassat ljud när ett cellvärde matchar ett visst villkor

4. Från och med nu, om ett värde större än 300 anges i cell A1, kommer ett specifikt ljud att spelas upp på en gång.

Anmärkningar: I koden ovan kan du ändra ljudvavfilen till ditt behov från c: \ windows \ media \ sökväg. Se skärmdump:

en skärmdump av att välja ett ljud


Spela upp ett ljud om cellvärdet ändras i en viss kolumn med VBA-kod

Om du vill spela upp ett ljud om cellvärdet ändras i en viss kolumn kan du använda följande VBA-kod.

1. Högerklicka på arkfliken som du vill spela upp ett ljud när värdet ändras i en kolumn och välj sedan Visa kod från snabbmenyn och i den öppnade Microsoft Visual Basic för applikationer fönster, kopiera och klistra in följande kod i den tomma modulen:

VBA-kod: Spela upp ett ljud om cellvärdet ändras i en kolumn:

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

en skärmdump av att använda en VBA-kod

Anmärkningar: I ovanstående kod, numret 3 i manuset Kolumner (3) är det kolumnummer som du vill spela upp ljud när värdet ändras i den här kolumnen.

2. Och sedan spara och stäng det här kodfönstret, om ett cellvärde ändras i tredje kolumnen kommer ett standardljud från systemet att spelas upp.


Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!