Weiß jemand, wie man mit VBA den BIOS-Sound(Peep) ansprechen kann? bei turbopascal ging das auch immer...
Melanie
Sub test()
Beep
End Sub
Option Explicit
Private Declare Function Beep Lib "kernel32" (ByVal Fq As Long, ByVal Tm As Long) As Long
Public Sub test()
Beep 1000, 1000
End Sub
Private Sub Play(ByVal s As String)
Dim i As Integer
Dim t As String
For i = 1 To Len(s)
t = Mid$(s, i, 1)
Select Case t
Case "a": Call Beep(444)
Case "b": Call Beep(488)
Case "c": Call Beep(550)
Case "d": Call Beep(580)
Case "e": Call Beep(640)
Case "f": Call Beep(720)
Case "g": Call Beep(810)
Case "h": Call Beep(860)
Case "i": Call Beep(920)
Case " ": Call Beep(32767)
End Select
Next i
End Sub
Um den BIOS-Sound (Peep) mit VBA in Excel zu nutzen, folge diesen Schritten:
Öffne Excel und aktiviere die Entwicklertools:
Datei
> Optionen
> Menüband anpassen
und aktiviere die Entwicklertools.Öffne den VBA-Editor:
ALT + F11
, um den VBA-Editor zu öffnen.Füge ein neues Modul hinzu:
VBAProject (DeineDatei.xlsx)
und wähle Einfügen
> Modul
.Füge den folgenden Code ein:
Private Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long
Sub TestBeep()
Beep 1000, 1000 ' Frequenz: 1000 Hz für 1 Sekunde
End Sub
Führe das Makro aus:
ALT + F8
, wähle TestBeep
und klicke auf Ausführen
.Der BIOS-Sound sollte jetzt ertönen.
Fehler: "Compile error: User-defined type not defined"
Private Declare Function Beep
nicht verändert wurde.Fehler: Kein Sound zu hören
Beep
-Befehl nutzt die integrierte Soundfunktion des BIOS und nicht die Soundkarte.Falls Du eine vba beep alternative
suchst, kannst Du auch die Application.Speech
-Funktion verwenden, um Text in Sprache umzuwandeln. Hier ein Beispiel:
Sub SpeakHello()
Application.Speech.Speak "Hallo, dies ist ein Test."
End Sub
Diese Methode verwendet kein BIOS-Sound, sondern gibt Sprache über die Lautsprecher aus.
Hier sind einige praktische Beispiele, um den excel beep
effektiver zu nutzen:
Ton für verschiedene Buchstaben:
Private Sub Play(ByVal s As String)
Dim i As Integer
For i = 1 To Len(s)
Select Case Mid$(s, i, 1)
Case "a": Beep 440, 500 ' 440 Hz für 0,5 Sekunden
Case "b": Beep 466, 500
' Füge weitere Buchstaben hinzu
End Select
Next i
End Sub
Ton für Benachrichtigungen:
Sub NotifyUser()
Beep 800, 300 ' Lauter Ton für 0,3 Sekunden
MsgBox "Achtung! Dies ist eine wichtige Nachricht."
End Sub
vba beep sound
-Effekte zu erzielen.Application.OnTime
-Befehl, um Töne zeitgesteuert abzuspielen.1. Frage: Funktioniert der BIOS-Sound auch auf jedem Computer? Ja, der BIOS-Sound sollte auf den meisten Computern funktionieren, solange die entsprechenden Einstellungen aktiv sind.
2. Frage: Kann ich den Sound auch in einer Excel-Datei speichern?
Nein, die Sounds, die mit vba beep
erzeugt werden, sind temporär und können nicht in der Excel-Datei selbst gespeichert werden.
3. Frage: Gibt es eine Möglichkeit, WAV-Dateien abzuspielen?
Ja, dafür kannst Du die sndPlaySound
-Funktion aus der winmm.dll
verwenden.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen