Wie lässt sich ein Ton abspielen, sobald eine Bedingung in Excel erfüllt ist?
In Excel können Sie die bedingte Formatierung nutzen, um Zellen basierend auf einer bestimmten Bedingung zu formatieren und hervorzuheben. Manchmal möchten Sie jedoch zusätzlich einen Ton abspielen, sobald eine Bedingung erfüllt ist – beispielsweise, wenn der Wert in Zelle A1 größer als 300 ist. Diese Funktion wird von Excel nicht direkt unterstützt. In diesem Artikel stelle ich Ihnen einige VBA-Codes vor, mit denen Sie diese Aufgabe dennoch lösen können.
Standard-Systempiepton basierend auf einem Zellwert mit VBA-Code abspielen
Benutzerdefinierten Ton basierend auf einem Zellwert mit VBA-Code abspielen
Ton abspielen, wenn sich der Zellwert in einer Spalte angeben ändert, mit VBA-Code
Standard-Systempiepton basierend auf einem Zellwert mit VBA-Code abspielen
Hier ist ein praktischer Code, der bei Erfüllung einer bestimmten Bedingung automatisch einen Standard-Systempiepton abspielt. Gehen Sie dazu wie folgt vor:
1. Halten Sie die ALT + F11-Tasten gedrückt, um das Microsoft Visual Basic for Applications-Fenster zu öffnen.
2. Klicken Sie auf Einfügen > Modul, und fügen Sie den folgenden Code in das Modul-Fenster ein.
VBA-Code: Standard-Systempiepton basierend auf einem Zellwert abspielen:
Function BeepMe() As String
Beep
BeepMe = ""
End Function
3. Schließen Sie das Code-Fenster, kehren Sie zum Arbeitsblatt zurück und geben Sie die folgende Formel in eine leere Zelle neben der Zelle ein, deren Wert als Auslöser für den Ton dienen soll:=IF(A1>300,BeepMe(),„"). Anschließend drücken Sie die Enter-Taste. In der Formelzelle wird nichts angezeigt. Siehe Screenshot:

4. Sobald der eingegebene Wert in Zelle A1 größer als 300 ist, ertönt ab sofort ein Standard-Systempiepton.
Benutzerdefinierten Ton basierend auf einem Zellwert mit VBA-Code abspielen
Möchten Sie statt des Standard-Systempieptons einen anderen Ton abspielen, hilft Ihnen hierzu ebenfalls ein VBA-Code weiter.
1. Halten Sie die ALT + F11-Tasten gedrückt, um das Microsoft Visual Basic for Applications-Fenster zu öffnen.
2. Klicken Sie auf Einfügen > Modul, und fügen Sie den folgenden Code in das Modul-Fenster ein.
VBA-Code: Bestimmten Ton basierend auf einem Zellwert abspielen:
#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. Schließen Sie danach das Code-Fenster, kehren Sie zum Arbeitsblatt zurück und geben Sie die folgende Formel in eine leere Zelle neben derjenigen ein, deren Wert als Auslöser für den Ton dienen soll:=IF(A1>300,SoundMe(),„"). Drücken Sie anschließend die Enter-Taste. In der Formelzelle wird nichts angezeigt. Siehe Screenshot:

4. Sobald ein Wert größer als 300 in Zelle A1 eingegeben wird, ertönt ab sofort sofort ein bestimmter Ton.
Hinweise: Im obigen Code können Sie den Dateipfad der WAV-Sounddatei nach Ihren Wünschen aus c:\windows\media\ ändern. Siehe Screenshot:

Ton abspielen, wenn sich der Zellwert in einer Spalte angeben ändert, mit VBA-Code
Wenn Sie einen Ton abspielen möchten, sobald sich der Zellwert in einer bestimmten Spalte ändert, können Sie den folgenden VBA-Code verwenden.
1. Klicken Sie mit der rechten Maustaste auf die Arbeitsblattregisterkarte, für die ein Ton abgespielt werden soll, sobald sich ein Wert in einer Spalte ändert, und wählen Sie anschließend im Kontextmenü Code anzeigen aus. Fügen Sie im geöffneten Microsoft Visual Basic for Applications-Fenster den folgenden Code in das leere Modul ein:
VBA-Code: Ton abspielen, wenn sich der Zellwert in einer Spalte ändert:
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

Hinweis: In dem obigen Code steht die Zahl 3 im Skript Columns(3) für die Spaltennummer, in der ein Ton abgespielt wird, sobald sich ein Wert in dieser Spalte ändert.
2. Schließen Sie anschließend das Code-Fenster und speichern Sie es. Ab sofort ertönt ein Standard-Systempiepton, sobald sich ein Zellwert in der dritten Spalte ändert.
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor.Kutools für Excel bietet über 300 erweiterte Funktionen zur Steigerung der Produktivität und Zeit sparen.Klicken Sie hier, um die Funktion zu erhalten, die Sie am dringendsten benötigen...
Office Tab bringt eine tabbasierte Oberfläche in Office und macht Ihre Arbeit viel einfacher
- Aktivieren Sie tabbasiertes Bearbeiten und Lesen in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters – statt jedes in einem separaten Fenster zu öffnen.
- Steigert Ihre Produktivität um 50 % und erspart Ihnen täglich Hunderte von Mausklicks!
Alle Kutools-Add-Ins – ein Installationsprogramm
Kutools for Office-Paket bündelt Add-Ins für Excel, Word, Outlook und PowerPoint sowie Office Tab Pro – ideal für Teams, die mit mehreren Office-Anwendungen arbeiten.
- Alles-in-einem-Paket— Add-Ins für Excel, Word, Outlook & PowerPoint sowie Office Tab Pro
- Ein Installationsprogramm, eine Lizenz— innerhalb weniger Minuten eingerichtet (MSI-fähig)
- Funktioniert besser zusammen— optimierte Produktivität über alle Office-Anwendungen hinweg
- 30-tägige Vollversion zum Testen— keine Registrierung, keine Kreditkarte erforderlich
- Bestes Preis-Leistungs-Verhältnis— sparen Sie im Vergleich zum Kauf einzelner Add-Ins