Hoe speel je een geluid af als aan een voorwaarde is voldaan in Excel?
In Excel kunnen we de voorwaardelijke opmaak toepassen om de cellen op te maken en te markeren om aan de voorwaarde te voldoen, maar soms wilt u misschien een geluid afspelen als aan een voorwaarde is voldaan. Als de celwaarde in A1 bijvoorbeeld groter is dan 300, wil ik dat er een geluid wordt afgespeeld. Excel ondersteunt deze functie niet, in dit artikel zal ik enkele VBA-codes introduceren om deze taak op te lossen.
Speel een standaard pieptoon van het systeem af op basis van de celwaarde met VBA-code
Speel een aangepast geluid op basis van de celwaarde met VBA-code
Speel een geluid af als de celwaarde verandert in een specifieke kolom met VBA-code
Speel een standaard pieptoon van het systeem af op basis van de celwaarde met VBA-code
Hier is een handige code waarmee u een standaard pieptoon van het systeem kunt afspelen wanneer aan een specifieke voorwaarde is voldaan, doe dit als volgt:
1. Houd de toets ingedrukt ALT + F11 toetsen, dan opent het de Microsoft Visual Basic voor toepassingen venster.
2. Klikken Invoegen > Moduleen plak de volgende code in het Module Venster.
VBA-code: speel een standaard pieptoon van het systeem af op basis van een celwaarde:
Function BeepMe() As String
Beep
BeepMe = ""
End Function
3. Sla vervolgens dit codevenster op en sluit het, ga terug naar het werkblad en voer deze formule in: = ALS (A1> 300, BeepMe (), "") in een lege cel naast de cel bevat de waarde waarop u een geluid wilt afspelen, en druk vervolgens op Enter sleutel, wordt er niets weergegeven in de formulecel, zie screenshot:
4. En nu, als de ingevoerde waarde in cel A1 groter is dan 300, wordt een standaard pieptoon van het systeem afgespeeld.
Speel een aangepast geluid op basis van de celwaarde met VBA-code
Als je een ander geluid wilt afspelen dan het standaard pieptoon van het systeem, kan hier ook een VBA-code je een plezier doen.
1. Houd de ALT + F11 toetsen, dan opent het de Microsoft Visual Basic voor toepassingen venster.
2. Klik Invoegen > Moduleen plak de volgende code in het Module Venster.
VBA-code: speel een specifiek geluid af op basis van een celwaarde:
#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. Sla vervolgens dit codevenster op en sluit het, keer terug naar het werkblad en voer deze formule in: = ALS (A1> 300, SoundMe (), "")in een lege cel naast de cel bevat de waarde waarop u een geluid wilt afspelen, en druk vervolgens op Enter sleutel, wordt er niets weergegeven in de formulecel, zie screenshot:
4. Als vanaf nu een waarde groter dan 300 wordt ingevoerd in cel A1, wordt een specifiek geluid tegelijk afgespeeld.
Opmerkingen: In de bovenstaande code kunt u het geluids-wav-bestand naar wens wijzigen van c: \ windows \ media \ bestandspad. Zie screenshot:
Speel een geluid af als de celwaarde verandert in een specifieke kolom met VBA-code
Als u een geluid wilt afspelen als de celwaarde in een specifieke kolom verandert, kunt u de volgende VBA-code toepassen.
1. Klik met de rechtermuisknop op de bladtab waarvan u een geluid wilt afspelen wanneer de waarde in een kolom verandert, en kies vervolgens Bekijk code vanuit het contextmenu en in het geopende Microsoft Visual Basic voor applicaties venster, kopieer en plak de volgende code in de lege module:
VBA-code: speel een geluid af als de celwaarde in een kolom verandert:
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
Note: In de bovenstaande code, het nummer 3 in het script Kolommen (3) is het kolomnummer dat u wilt laten klinken als de waarde in deze kolom verandert.
2. En sla vervolgens dit codevenster op en sluit het. Als een celwaarde verandert in de derde kolom, wordt een standaard pieptoon van het systeem afgespeeld.
Beste Office-productiviteitstools
Geef uw Excel-vaardigheden een boost met Kutools voor Excel en ervaar effici毛ntie als nooit tevoren. Kutools voor Excel biedt meer dan 300 geavanceerde functies om de productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die u het meest nodig heeft...
Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker
- Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
- Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
- Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!