Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Bei Eegebnis "0" kurzen sound abspielen

Forumthread: Bei Eegebnis "0" kurzen sound abspielen

Bei Eegebnis "0" kurzen sound abspielen
14.11.2024 11:54:55
Siegfried Pütz
Hallo zusammen,
ich habe eine excel Tabelle mit Formeln. In "E2" ist ein Wert...der Wert von "E3" wird abgezogen. In "4" steht irgendwann mal der Wert "0".
Was ich jetzt möchte: bei erreichen des Wertes "0" soll ein kurzer Sound ertönen.
Habe schon einige Seiten augesucht, leider ohne Erfolg.
Noch zusätzlich, ich benutze Windows 10, 64bit Version, falls das von belangen sein sollte.
Freue mich auf Eure Antworten.
Gruß,
SiggiP
Anzeige

72
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: BEEP
14.11.2024 11:57:59
Fennek
Hallo,

reicht ein


if variable = 0 then beep


mfg
AW: Bei Eegebnis "0" kurzen sound abspielen
14.11.2024 12:06:54
daniel
Hi
das entscheidende ist, wie getriggert werden soll, wann der Ton ertönt.
wie kommen denn die Werte zu stande?
in E4 steht wahrscheinlich =E2-E3.
wie kommen die Werte in E2 und E3? Werden die vom Anwender von Hand befüllt oder stehen da auch Formeln?
muss nur E4 so überwacht werden oder noch weitere Zellen?
Wann und wie oft soll der Ton ertönen? nur beim Wechsel auf 0 oder, wenn die 0 da länger steht, permanent?

Muss es ein Ton sein? Würde ggf auch das Umfärben der Zelle E4 ausreichen? Das könnte man nämlich einfach über die Bedingte Formatierung erledigen.
Geht es nur um die Anzeige oder soll das Erreichen von 0 prinzipiell verhindert werden?
Gruß Daniel
Anzeige
Im Anhang habe...
14.11.2024 12:26:05
Case
Moin, :-)

... ich dir mal ein Beispiel erstellt: ;-)
https://www.herber.de/bbs/user/173601.xlsb

Den Namen der Sounddatei musst du noch anpassen (die liegt im gleichen Verzeichnis wie die Exceldatei). ;-)

Servus
Case
Anzeige
AW: Im Anhang habe...
14.11.2024 13:21:47
Siegfried Pütz
Hallo Case,
ich komme nicht zurecht mit deiner Formel.....die scheint bei Dir zu funktionieren.
Vieleicht liegt es daran, das ich den Weg zu der Wave Datei falsch eintrage. Habe jetzt schon diverse Pfade angegeben. Auch habe ich nur den Namen mit der Endung Wave ersetzt. Kommt aber immer ein Hinweis auf Sicherheit.....was immer das heißt.
Makros sind zugelassen....
Gruß,
SiggiP
Anzeige
Du musst eigentlich nur...
14.11.2024 13:30:33
Case
Moin, :-)

... den Namen der WAV-Datei anpassen - keine Pfade angeben. UND beide Dateien müssen im selben Ordner liegen. ;-)
https://www.herber.de/bbs/user/173606.zip

Servus
Case
Anzeige
AW: Du musst eigentlich nur...
14.11.2024 13:49:17
Siegfried Pütz
Hallo Case,
das hat schon mal funktioniert mit der Soundänderung. :-)...,
nur, sobald ich das Makro anklicke kommt der Sound, aber nur dann.:-(
Wie kann ich das aber der Zeile E4 zuordnen, wenn dort der Wert "0" erscheint?
Hoffe auf eine Lösung!!!
Gruß,
SiggiP
In meiner...
14.11.2024 13:52:05
Case
Moin, :-)

... Beispieldatei startet der Sound, wenn Zelle E4 0 ist/wird. ;-)

Servus
Case
Anzeige
AW: In meiner...
14.11.2024 14:29:42
Siegfried Pütz
Hallo Case,
bei Deinem Beispiel funtzt es richtig. Habe das Makro kopiert und in meiner Tabelle eingefügt. hier funktioniert es leider nicht.
Keine Ahnung warum?
Gruß,
SiggiP
Du musst auch den...
14.11.2024 14:40:17
Case
Moin, :-)

... Code der zum Tabellenblatt gehört an die richtige Stelle in deiner Datei kopieren - nicht nur das Modul.

Servus
Case

Anzeige
AW: Du musst auch den...
14.11.2024 16:54:29
Siegfried Pütz
Hallo Case,
mein Hirn brennt schon. Bei deiner Tabelle funktioniert es einwandfrei.
Ich verzweile, wenn ich das in meiner Tabelle übertragen möchte...
Habe das so ziemlich alles übertragen...das Makro und auch den Code in das Tabellenblatt eingeben.
Damit habe ich Probleme. Kommt Fehlermeldung oder der Sound wird nicht abgespielt....
Keine Ahnung... :-((
Gruß,
SiggiP

Danke Dir :-)
Anzeige
Lade doch mal eine...
14.11.2024 16:57:23
Case
Moin, :-)

... Beispieldatei - in der es nicht funktioniert - hier hoch, dann schauen wir mal. ;-)

Servus
Case
AW: Lade doch mal eine...
14.11.2024 17:05:43
Siegfried Pütz
Hallo Case und allen die mir bisher geantwortet haben. Danke allen.
Datei habe ich hochgelden. Habe aber noch einige.
Mal sehen was Euch dazu einfällt :-)....
Anzeige
Wir können die...
14.11.2024 17:10:49
Case
Moin, :-)

... Datei nicht sehen. Du musst schon genau nach Anweisung vorgehen! ;-)

Servus
Case
AW: Wir können die...
14.11.2024 17:16:47
Siegfried Pütz
173619.xlsm

Komisch...zeigt mir ....schon hochgeladen....
AW: Wir können die...
14.11.2024 17:21:48
daniel
füge doch bitte die komplette Linkadresse ein.
dann kann sieht man hier einen kompletten Link, den man nur anklicken muss, um deine Datei zu öffnen.
wenn du die Datei hochgeladen hast, dann kannst du doch diesen einfach per Buttonklick kopieren. Einfacher geht's nicht.
du hast es leichter, wir haben es leichter.
Warum machst du es uns unnötig schwer?
Anzeige
In welchen...
14.11.2024 17:22:14
Case
Moin, :-)

... Tabellenblättern soll es denn funktionieren? Du hast den Code ja nirgends drin?

Servus
Case
AW: In welchen...
14.11.2024 17:26:37
Siegfried Pütz
hi Case,
ich dachte nur eine Datei hochladen. Mit den Codes die bei nicht funktioniert haben, habe ich auch nicht gespeichert.
Gruß,
SiggiP
Anzeige
Habe sie mir nicht...
14.11.2024 17:42:42
Case
Moin, :-)

... angeschaut. Habe dir ja eine hochgeladen (die ZIP). Hier noch eine mit "Speech": ;-)
https://www.herber.de/bbs/user/173622.xlsm

Servus
Case
Anzeige
AW: Es funktioniert...
14.11.2024 18:05:37
Siegfried Pütz
Hallo Case und diejenigen die sich mit meinem Problem beschäftigt haben, vielen Dank.
Es funktioniert wie ich gewünscht habe.... :-)
Danke
Anzeige
AW: Es funktioniert...
14.11.2024 21:47:09
Siegfried Pütz
Hallöchen, habe jetzt festgestellt das bei der Eingabe in D3, d4...usw. jedesmal der Sound abgespielt wird. Sollte ja nur bei Wert 0 in e4 ertönen?
Gruß,
SiggiP
Ja - in meiner...
15.11.2024 06:31:33
Case
Moin, :-)

... Beispieldatei wird auf E4 und L4 geprüft. Und ich kann in D... eingeben, was ich will. Solange E4 oder L4 nicht 0 ergeben, gibt es keinen Sound. ;-)

Servus
Case
Anzeige
AW: Ja - in meiner...
15.11.2024 09:58:18
Siegfried Pütz
Guten Morgen Case,
sorry, hatte etwas rumprobiert, natürlich vorher in einem anderen Ordner kopiert, zur Sicherheit. Dabei ist bestimmt etwas durcheinander geraten, frage nicht warum.
Habe noch eine Frage dazu (wenn es Dich nicht nervt): Habe das Main Makro bzw. den Inhalt kopiert und in einer Datei mit 3 Spielern anstatt mit 2 Spielern eingefügt.
Aber hier wird der Sound nicht abgespielt bei erreichen von 0. Den Sound habe ich in den gleichen Ordner eingefügt.
Wie soll ich wegen dem Problem vorgehen?
Gruß,
SiggiP
Anzeige
Du musst noch...
15.11.2024 10:43:20
Case
Moin, :-)

... den Code aus "DieseArbeitsmappe" in die andere Datei kopieren UND gegebenenfalls anpassen. ;-)

Userbild

Anpassungen bedeuten - heissen die Tabellenblätter dort auch "Rd. 1"? Die Nummer erschlagen wir mit "Rd.*". Sind die Zellen die überwacht werden sollen auch E4 und L4?
Für eine dritte Zelle dann so (Zellen bei Bedarf anpassen):

If [E4] = 0 Or [L4] = 0 Or [P4] = 0 Then Call Main

Es ist besser - wie Daniel schon schrieb - das Worksheet_Change Ereignis zu nehmen. Das Calculate kann dir auch mal ungewollt dazwischen funken. Dazu müsste man wissen, wo eingegeben wird.

Servus
Case
Anzeige
AW: Du musst noch...
15.11.2024 11:08:00
Siegfried Pütz
Hallo Case, vielen Dank.....alles funktioniert. Gewusst wie. Super.
Gruß,
SiggiP
AW: Du musst noch...
18.11.2024 23:55:00
Siegfried Pütz
Hallöchen, ich bin´s nochmal,
hab mal wieder was ausprobiert mit text to speech....in den Zellen D4-D33 und K4-K33 möcht ich jeden Wert über 99 den Text (sehr Gut) aussprechen lassen.
Das funktioniert soweit. Nur wenn ich z.B. in d4 über 99 eintrage und dann in d5 wieder z.B. 100 eintrage ertönt das "sehr gut" gleich zweimal, das geht so weiter,bei D6 =3X, D7 =4X usw. ..
Wie kann man das unterbinden? Habe schon einges probiert... :-(

Grüße,
SiggiP
Anzeige
AW: Siehe...
19.11.2024 14:50:29
Siegfried Pütz
Hallo Case, super, klappt wunderbar..... :-)
wenn es jetzt noch möglich wäre neben der Sprachausgabe auch die Sounddatei bei erreichen des Wertes "0", wie bereits vor einigen Tagen von Dir gelöst,
einzubinden, das wäre perfekt!!!???
Gruß SiggiP

Noch eine Frage: was muß ich ändern, wenn ich das auf 3 Mitspieler erweitern möchte?
Anzeige
AW: Das würde dann...
19.11.2024 19:03:45
Siegfried Pütz
Hallo Case....alles super, so wollte ich es haben. Perfekt.
Kannst du mir noch beschreiben wie das Alles auf 3 bzw. 4 Paarungen zu erweitern ist? Was muß ich kopieren und entsprechend erweitern?
So:

ElseIf Not Intersect(Target, Range("n4:n33")) Is Nothing And Trim(Target.Value) > "" Then
If Range("n4").Value = 0 Then
Call Main(2)
Else

???????????

Gruß,
SiggiP
Anzeige
Im Prinzip...
19.11.2024 20:09:51
Case
Moin, :-)

... einfach erweitern: ;-)

ElseIf Not Intersect(Target, Range("N4:N33")) Is Nothing And Trim(Target.Value) > "" Then

If Range("O4").Value = 0 Then
Call Main(2)
Else
If Target.Value > 99 Then Call Main(1) Else Call Main(0)
End If


Servus
Case
Anzeige
AW: Im Prinzip...
19.11.2024 21:38:56
Siegfried Pütz
Hallo Case,
habe das mit den 2er hinbekommen. Bei 3 Mitspielern nicht. Bin nicht so gut wie Du....
Eine Datei wo ich probiert habe im Anhang. Wo liegt das Problem???
Gruß,
SiggiP

https://www.herber.de/bbs/user/173716.xlsm
Anzeige
Du musst auch den...
20.11.2024 09:52:31
Case
Moin, :-)

... Code an deine Gegebenheiten anpassen. Die Tabellenblätter heissen nicht mehr "Rd.1". Da ist kein Punkt mehr. Und die Variablenübergabe muss schon passen: ;-)

Option Explicit

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name Like "Rd*" Then
If Target.CountLarge = 1 Then
If Not Intersect(Target, Range("D4:D33")) Is Nothing And Trim(Target.Value) > "" Then
If Range("E4").Value = 0 Then
Call Main(2)
Else
If Target.Value > 99 Then Call Main(1) Else Call Main(1)
End If
ElseIf Not Intersect(Target, Range("K4:K33")) Is Nothing And Trim(Target.Value) > "" Then
If Range("L4").Value = 0 Then
Call Main(2)
Else
If Target.Value > 99 Then Call Main(1) Else Call Main(1)
End If
ElseIf Not Intersect(Target, Range("R4:R33")) Is Nothing And Trim(Target.Value) > "" Then
If Range("S4").Value = 0 Then
Call Main(2)
Else
If Target.Value > 99 Then Call Main(1) Else Call Main(1)
End If
End If
End If
End If
End Sub


Du wirst nicht umhin kommen, dich mit den Grundlagen von VBA auseinanderzusetzen. ;-)

Servus
Case
Anzeige
AW: Du musst auch den...
20.11.2024 10:10:03
Siegfried Pütz
Hallo Case.
Vielen Dank für deine Hilfe. Deinen Ratschlag wegen den VBA Kenntnissen hätte ich, 40 Jahre früher, gerne gefolgt. In meinem Alter ist es wahrscheinlich nicht mehr sinnvoll! Daher freue ich mich sehr über Deine/Eure Hilfe. Bin ja froh darüber, das es Foren gibt die Helfen. Und hier wird ja geholfen. Nochmals Danke.
Bevor ich noch eine Frage stellen wollte, habe ich getestet. Super.
Gruß,
SiggiP
Anzeige
AW: Du musst auch den...
20.11.2024 10:54:31
Siegfried Pütz
Hallo Case,
habe deinen Code kopiert und ersetzt. Funktioniert so weit. Einziges Problem; nach jeder Eintragung erfolgt die Sprachbenachritigung, egal welche Zahl ich auch eintrage. Wie ich festgestellt habe werden ja zwei Codes (Cod´s???) benötigt
Code 1 habe ich reinkopiert in "Diese Arbeitsmappe(Code).
Code 2 von der 2er übernommen.

Code 1: Option Explicit Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) -

Code 2: ption Explicit
Private Declare PtrSafe Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Private Const SND_ASYNC = &H1
Private Const SND_NODEFAULT = &H2
Public Sub Main(ByVal lngTMP As Long)
Dim objSpeech As Object
Set objSpeech = CreateObject(Class:="SAPI.SpVoice.1")
Set objSpeech.Voice = objSpeech.GetVoices.Item(0)
If lngTMP = 1 Then
Call objSpeech.Speak("schöne Darts super")
ElseIf lngTMP = 2 Then
sndPlaySound 0, SND_ASYNC
sndPlaySound ThisWorkbook.Path & Application.PathSeparator & "Michelle.wav", SND_ASYNC Or SND_NODEFAULT
End If
Set objSpeech = Nothing
End Sub

Nervend(???)
SiggiP
Anzeige
AW: Du musst auch den...
20.11.2024 11:04:59
Siegfried Pütz
Hallo Case,
habe das Problem gelöst (Main (1) durch (0) ersetzt.
Gruß,
SiggiP
Du wirst doch noch...
20.11.2024 12:22:32
Case
Moin :-)

... zum VBA Profi. ;-)

Servus
Case
AW: Du wirst doch noch...
21.11.2024 11:50:10
Siegfried Pütz
Hallo und guten Morgen.
Frage an Case: Kann ich z.B. "E4" zwei Value zuweisen? Das eine ist "= 0 Then Call Main(2). Das andere =111 Then Call Main(3).
Habe schon etliche Varianten probiert, ohne Erfolg. Liegt es an der zweifachen Zuweisung?
Etwas zu deinen bisherigen Hilfen: wir hatten gestern mal wieder einen Dartabend, und das mit der Sprach- und Soundausgabe war´s richtig lustig.
Es wurden auch sogenannte "Schnapszahlen" (111,222,333,444) geworfen. Um das jetz akkustisch publik zu machen, die obige Frage.
Gruß,
SiggiP
Anzeige
AW: Das würde dann...
21.11.2024 14:27:26
Siegfried Pütz
Case.....du bist Spitze....vielen Dank.
Das wird ne Gaudi :-)

Gruß,
SiggiP
AW: Das würde dann...
28.11.2024 10:17:26
Siegfried Pütz
Guten Morgen Case und allen Anderen,
ich habe 2 Dinge/Fragen: zum einen; das mit der Schnapszahl ist gut angekommen. Was etwas stört ist, auch bei zweistelliggen Zahlen 11, 55, 66 usw. wird der Text wiedergegeben. Wenn zum auswerfen z.B. 22 also doppel 11 nicht getroffen wird kommt die Sprachnachricht "Schapszahl"! Kann man das auf 3 stellige Zahlen ändern?
Die zweite Frage: Wenn z.B. "Anja" auswirft, kann dann ein anderer Sound zugeordnet werden?
Gruß,
SiggiP
Anzeige
AW: Das würde dann...
17.01.2025 11:11:47
Siegfried Pütz
Guten Morgen,
habe gestern alle Dateien aktualisiert. Bei den Probeeingaben, sowie beim letzten Training, nervt es, das beim checken (Beispiel: Doppel 2 soll ausgeworfen werden, wird aber nur eine einfache 2 getroffen, dann erfolgt nach Eintrag von "2" "das war nichts").
Jetzt ist mein Gedanke, das ab Runde 10, nur noch "no score" bzw. der jeweilige "Siegersound" ertönt.
Im Anhang der bisherige Code.
Also: Range "D4:D14", K4:K14" für alle Mains, "D15:D33 , K15:K33" ohne Case 4.
Danke für Eure Hilfe.
Grüße Euch,
SiggiP

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

If Sh.Name Like "Rd*" And Target.CountLarge = 1 Then
If Intersect(Target, Range("D4:D33", "K4:K33")) Is Nothing Or Trim(Target.Value) = "" Then Exit Sub
Else
Exit Sub
End If
If Cells(4, Target.Column + 1).Value = 0 Then
Call Main(2, Cells(1, Target.Column).Value)
ElseIf fncSchnapszahl(Cells(4, Target.Column + 1)) = True Then
Call Main(3, "Schnapszahl")
Else
Select Case Target.Value
Case 100
Call Main(6)
Case 0
Call Main(5)
Case 120, 140, 160, 170, 180
Call Main(Target.Value, Target.Value)
Case Is = 10
Call Main(4)
Case Is >= 80
Call Main(1)
End Select
End If
End Sub



Option Explicit

Private Declare PtrSafe Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Private Const SND_ASYNC = &H1
Private Const SND_NODEFAULT = &H2
Public Sub Main(ByVal lngTMP As Long, Optional ByVal strName As String)
Dim objSpeech As Object
Set objSpeech = CreateObject(Class:="SAPI.SpVoice.1")
Set objSpeech.Voice = objSpeech.GetVoices.Item(0)
Select Case lngTMP
Case 1
Call objSpeech.Speak("schöne Darts")
Application.Wait Now + TimeValue("00:00:01")
Call objSpeech.Speak("super")
Case 2, 3, 120, 140, 160, 170, 180
sndPlaySound 0, SND_ASYNC
sndPlaySound ThisWorkbook.Path & Application.PathSeparator & strName & ".wav", SND_ASYNC Or SND_NODEFAULT
Case 4
Call objSpeech.Speak("dat war überhaupt nix")
Case 5
Call objSpeech.Speak("no score")
Case 6
Call objSpeech.Speak("einhundert")
Application.Wait Now + TimeValue("00:00:01")
Call objSpeech.Speak("weiter so")
End Select
Set objSpeech = Nothing
End Sub
Function fncSchnapszahl(ByVal rngCell As Range) As Boolean
Dim objRegEx As Object
Set objRegEx = CreateObject("VBScript.RegExp")
'objRegEx.Pattern = "^(.)\1+$"
objRegEx.Pattern = "^(.)\1{2}$"
fncSchnapszahl = objRegEx.Test(rngCell.Value)
End Function
Anzeige
Nun, da muss nur der...
28.11.2024 12:52:09
Case
Moin, :-)

... Pattern geändert werden, dann klappt das auch nur bei 3 stelligen Schnapszahlen. ;-)

Für unterschiedliche Ausgaben bei den Namen, kannst du einfach für jeden Namen eine WAV-Datei ablegen. Der Code liest jetzt den Namen aus E1 aus und startet dann z. B. die "Anja.wav". ;-)

https://www.herber.de/bbs/user/173865.xlsm

Servus
Case
Anzeige
AW: Nun, da muss nur der...
28.11.2024 13:47:11
Siegfried Pütz
Hallo Case,
das mit der Schnapszahl funktioniert, Danke.
Nur mit dem zuweisen der Namen in E1 usw. verstehe ich nicht :-(
hast irgendwo im Pfad "sndPlaySound ThisWorkbook.Path & Application.PathSeparator & & strName & ".wav",".
Das mit der wav datei klappt in den anderen Dateien die ich schon zugewiesen habe.
Kannst du mal den Code, den ich ändern muß beschreiben?
Danke,
Gruß
SiggiP
Anzeige
Ja nicht nur...
28.11.2024 14:24:06
Case
Moin, :-)

... E1 - das war mein Fehler: ;-)
Option Explicit

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name Like "Rd*" Then
If Target.CountLarge = 1 Then
If Not Intersect(Target, Range("D4:D33")) Is Nothing And Trim(Target.Value) > "" Then
If Range("E4").Value = 0 Then
Call Main(2, Range("E1").Value)
ElseIf fncSchnapszahl(Range("E4")) = True Then
Call Main(3)
Else
If Target.Value > 99 Then Call Main(1)
End If
ElseIf Not Intersect(Target, Range("K4:K33")) Is Nothing And Trim(Target.Value) > "" Then
If Range("L4").Value = 0 Then
Call Main(2, Range("L1").Value)
ElseIf fncSchnapszahl(Range("L4")) = True Then
Call Main(3)
Else
If Target.Value > 99 Then Call Main(1)
End If
ElseIf Not Intersect(Target, Range("R4:R33")) Is Nothing And Trim(Target.Value) > "" Then
If Range("S4").Value = 0 Then
Call Main(2, Range("S1").Value)
ElseIf fncSchnapszahl(Range("S4")) = True Then
Call Main(3)
Else
If Target.Value > 99 Then Call Main(1)
End If
End If
End If
End If
End Sub

Und im Modul wird dann der Name aus E1, L1, oder S1 genommen. Ich gehe davon aus, dass die Namen dort stehen? Da ist ja die Auswahlliste.

Dann wird eben "Anja.wav" oder "Volker.wav" abgespielt - wenn es diese Sounddatei gibt.

Servus
Case
Anzeige
AW: Ja nicht nur...
28.11.2024 15:59:53
Siegfried Pütz
Hallo Case,
in welchem Pfad definiere ich die Namen für den entsprechenden Sound?
ist das hier?

ElseIf lngTMP = 2 Then
sndPlaySound 0, SND_ASYNC
sndPlaySound ThisWorkbook.Path & Application.PathSeparator & strName & ".wav", SND_ASYNC Or SND_NODEFAULT
Gruß
SiggiP
Anzeige
Über...
28.11.2024 16:08:21
Case
Moin, :-)

... ThisWorkbook.Path ist definiert, dass die Wav-Dateien im gleichen Ordner wie die Datei mit dem Makro sind. Sind die woanders, muss angepasst werden.

Servus
Case
AW: Über...
28.11.2024 17:02:05
Siegfried Pütz
Hallo Case,
unten mal mein Versuch. Bekomme es nicht hin :-(

Gruß
SiggiP

https://www.herber.de/bbs/user/173872.xlsm
Anzeige
Bei...
28.11.2024 17:22:51
Case
Moin, :-)

... verbundenen Zellen wird immer die linke obere angegeben. Also D1, K1 und R1. :-)

Und im Modul fehlt auch was: ;-)
Public Sub Main(ByVal lngTMP As Long, Optional ByVal strName As String)

Die Zeile mit dem Sound dann so: ;-)
sndPlaySound ThisWorkbook.Path & Application.PathSeparator & strName & ".wav", SND_ASYNC Or SND_NODEFAULT


Servus
Case
Anzeige
AW: Bei...
28.11.2024 17:28:02
Siegfried Pütz
Hallo Case,
zuerst einmal Danke für Deine Beiträge.
Ich versuche es morgen hinzubekommen. Im Moment qualmt mein Hirn :-)
Melde mich ob ich es hin bekomme.
Gruß,
SiggiP
AW: Bei...
28.11.2024 20:04:22
Siegfried Pütz
Hallo Case,
Frage: ist hier ein Fehler? Call Main(2, Range("E1").Value)
In den anderen Call Main ist z.B. Call Main (1) immer eine Klammer hinter der Zahl.
Habe alles probiert. Die Sprachen funktionieren. Die Sounds nicht.
Gruß,
Siggi
Anzeige
Da ist alles...
28.11.2024 21:06:16
Case
Moin, :-)

... richtig. Die Wav-Dateien sollen ja mit den Namen aufgerufen werden. Dafür ist der Optionale Parameter im Modul. Den brauchst du bei der reinen Sprachausgabe nicht. Also bei mir läuft es. ;-)

Kann dir morgen im Laufe des Tages mal ein Beispiel hochladen. ;-)

Servus
Case
Anzeige
AW: Da ist alles...
28.11.2024 21:12:44
Siegfried Pütz
Hallo Case,
das mit der Beispieldatei ist mir am liebsten. Wenn der "Weg" einmal zu sehen ist komme ich vielleicht zu Recht.
Da es bei Dir läuft ist ja schon vielversprechend :-)
Gruß,
SiggiP
AW: Hier nun die...
29.11.2024 12:18:29
Siegfried Pütz
Case...du bist Spitze,
vielen Dank :-)
Gruß,
SiggiP
AW: Hier nun die...
07.12.2024 09:26:39
Siegfried Pütz
Guten morgen Case,
ich bin´s nochmal. Du hast mir soviel geholfen, daher wende ich mich an Dich.
Folgendes: Anstatt der Speech Zuweisung für "die Schnapszahl", würde ich die gerne durch eine Sounddatei ersetzen.
Hast Du einen Code den ich dann einbringen kann?
Gruß,
SiggiP
Anzeige
Siehe die...
07.12.2024 09:52:05
Case
Moin Siggi, :-)

... Beispieldatei: ;-)
https://www.herber.de/bbs/user/174154.zip

Du brauchst dann eine Datei "Schnaps.wav" im gleichen Ordner wie die Datei mit dem Code. ;-)

Servus
Case
AW: Siehe die...
07.12.2024 11:26:36
Siegfried Pütz
Danke Case.
Funktioniert einwandfrei.
Happy Weekend
Gruß,
SiggiP
Anzeige
AW: Das würde dann...
21.11.2024 15:11:40
Siegfried Pütz
Hallo Case,
noch eine letzte Frage (wirklich :-) )...in den Sprachausgaben z.B. Prima Super möchte ich zwischen den beiden Wörtern eine kurze Pause - prima(pause)super einbringen. Habe es mit Leerzeichen probiert....Wortlaut wird wie vorher abgespielt.
Welche Möglichkeit gibt es, wenn überhaupt?

Gruß,
der nervende,
SiggiP
Anzeige
AW: Mit Pause...
21.11.2024 15:49:42
Siegfried Pütz
Case...vielen Dank.
Ich glaube das war´s. :-)
Danke
Gruß,
SiggiP
AW: Bei Eegebnis "0" kurzen sound abspielen
14.11.2024 12:18:44
Siegfried Pütz
Hallo daniel,
danke für´s schnelle Anzworten,
das Ergebnis in E3 erfolgt durch addition mehrer Zellen. Der Wert in E2 bleibt.
Zum Verständnis insgesammt: Wir trainieren an einer Dartscheibe (Steeldarts". Die geworfenen Punkte tragen wir in der Additionsilste ein.
Wenn nun einer auswirft, also auf 0 kommt, dann soll ein kurzer Sound, wie bei Dartautomaten, ertönen?
Ist zwar nur für Spaß, wäre aber nett wenn´s klappen sollte, mit dem Sound.
Gruß,
SiggiP
Anzeige
AW: Bei Eegebnis "0" kurzen sound abspielen
14.11.2024 12:33:42
daniel
Hi

du benötigst dieses Makro im Modul des Tabellenblatts, auf dem die Addtionsliste (dort, wo ihr von Hand eintragt) liegt:

Private Sub Worksheet_Change(ByVal Target As Range)

If Range("E4").Value = 0 then Beep 'Sound abspielen
End Sub


sollte die Zelle E4 auf einem anderen Blatt liegen, so musst du noch vor dem Range("E4") das jeweilige Tabellenblatt angeben.

das Problem ist, es ist nicht so einfach, Formeln auf Wertänderungen hin zu überwachen um damit Aktionen auszulösen.
wenn möglich, sollte man die Aktion über die Zellen auslösen, die man von Hand ändert (das geht über das Change-Event) und die einen Einfluss auf das Formelergebnis haben.

Gruß Daniel
Anzeige
AW: Bei Eegebnis "0" kurzen sound abspielen
14.11.2024 13:14:09
Siegfried Pütz
Hallo Daniel,
das mit dem Beep klappt. Danke.
Kann ich das Beep durch eine wav Datei ersetzen?
Habe zwar schon Antworten darauf erhalten, aber ich scheine das nicht zu kappieren :( ...
Gruß,
Siggi
AW: Bei Eegebnis "0" kurzen sound abspielen
14.11.2024 13:41:30
volti
Hallo Siegfried,

Die interne Funktion Beep ist schon sehr alt und kann nur einfache Rechtecktöne abspielen.

Es gibt noch eine API-Beep-Funktion, da kann man Höhe (Frequenz) und Länge des Tons angeben.

WAV Dateien kann man nur mit API-Funktionen abspielen wie z.B. misendsound oder eben wie von Case vorgeschlagen die einfachste Funktion PlaySoundA.

Was zum Lesen:
https://www.herber.de/forum/cgi-bin/callthread.pl?index=1932865

Gruß
Karl-Heinz
Anzeige
Aahhh - prima,...
14.11.2024 13:49:29
Case
Moin Volti, :-)

... dass du den Thread verlinkt hast. Hatte "API Beep" und "Application.Speech.Speak" schon wieder vergessen. Nutze sowas auch nur wenig, bis gar nicht. ;-)

Servus
Case
AW: Aahhh - prima,...
14.11.2024 14:03:53
daniel
Application.speech.speak sollte das einfachste sein. Man könnte damit nicht nur das Spielende anzeigen, sondern auch gleich den Siegernamen verkünden.
Anzeige
AW: BEEP
14.11.2024 12:06:24
Siegfried Pütz
Hallo Fennek,
danke für deine rasche Antwort.
Das habe ich schon probiert, ohne Erfolg. Den Sound, den ich abspielen möchte, ist im gleichen Ordner.
Ich weiß nicht ob ich so eine Aufzeichnung in den Code der Zelle zuweisen muß?
Ein Beispiel bzw. einen entsrechenden "Code" wäre schön.
Gruß,
SiggiP
Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18