Emetre un son si cellule E3 ou E8 occupée
Re
Au départ les 2 cellules E3 et E8 sont vides. Si le bilan de mes charges de l'année 2020 sont négatives de 100€ par exemple je mets 100€ dans cellule E3
Donc je ne peux pas mettre 100 € dans cellule E8 sinon message et beep
Inversement si positives 100€ dans cellule E8 et je ne peux pas mettre 100 € dans cellule E3 sinon message et beep
Je peux t'envoyer un fichier perso STP?
D'avance merci
heu ça correspond pas a la condition que tu a codé
la condition E8/E3 c'est si l'un ou l'autre n'est pas vide
donc qu'il y ai 100€ ou 1000€ dans l'une ou l'autre l'autre ne peut être modifiée
le choix d'utiliser l'event dans thisworkbook pourquoi????
sinon tel que je te l'ai donné , j'ai testé , ça fonctionne
Bonjour le forum
Trouvé en 5 minutes après y avoir passé des heures.
Dans un module
Sub JouerSon()
' Joue le son du fichier C:\Windows\Media\Windows Exclamation.wav.wav
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\Windows\Media\Windows Exclamation.wav"")"
End Sub
Puis dans ThisWorkbook
JouerSon
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim NombreJour As Integer
Dim Ladate As Date
Application.ScreenUpdating = False
If Target.Count > 1 Then Exit Sub
Application.EnableEvents = False
' On recherche si la page est surveillée
If Left(Sh.Name, 7) = "Charges" Then 'Le chiffre 7 = Nombre de lettres du mot "Charges".On peut mettre 8 avec un espace après "Charges " pour une sécurité.
If Not Intersect(Range("B12:B112,E12:E112"), Target) Is Nothing Then
If Target.Interior.ColorIndex = 2 Then
' Si la colonne B et la colonne E est vide on efface la date
Range("A" & Target.Row) = IIf(Range("B" & Target.Row) & Range("E" & Target.Row) = "", "", Application.Proper(Format(Date, "dddd dd mmmm yyyy")))
' ********* Début Modifs. Tapez le Montant (colonnes E ou B) et éventuellement Modifier les Dates (Colonne A) sous le format suivant => 07/02/20 (Exemple)
End If
'
' Début modification du 05/08/2020 : Inscription automatique date en cellule A17
ElseIf Not Intersect(Range("E7,J2"), Target) Is Nothing Then
If Target = "" Then
Range("A18").ClearContents ' Suppression date si SUPPR cellule E6
Else
If Range("E18") = Range("E7") Then
Range("A18") = Application.Proper(Format(Date, "dddd dd mmmm yyyy")) ' Sinon on inscrit la date
End If
End If
' Fin modification du 05/08/2020 : Inscription automatique date en cellule A17
'
ElseIf Target.Column = 1 And Target.Row > 12 And Target.Interior.ColorIndex = 2 Then 'Ajout de And Target.Interior.ColorIndex = 2 pour pouvoir recopier texte ligne
If IsDate(Target) Then
Target = Application.Proper(Format(Target, "dddd dd mmmm yyyy")) ' Sinon on inscrit la date
Else
Target = ""
' ***************** Fin modifs
End If
'Début modifs le 14/02/2021
ElseIf Not Intersect(Target, Union(Range("E3"), Range("E8"))) Is Nothing Then
x = Range("E3").Value
y = Range("E8").Value
If (x <> "") And (y <> "") Then
JouerSon
Target.ClearContents
MsgBox "Impossible de saisir une valeur dans cellule " & Target.Address(rowabsolute:=False, columnabsolute:=False) & " car cellule " & IIf(Target.Address = "$E$8", "E3", "E8") & " renseigné"
End If
'Fin modifs le 14/02/2021
End If
End If
Application.EnableEvents = True
End Sub
Grâce au lien ci-dessous qui date de juillet 2013 je crois
http://forum.excel-pratique.com/excel/jouer-un-son-wav-excel-2010-t41337.html |
Merci à tous
Bonne fin de journée à tous
Cordialement
BONJOUR
je vais quand meme attirer ton attention sur un petit detail qui a son importance
teste ses deux petites choses comme ça dans un fichier vierge et regarde le curseur de ta souris (celui de l'attente sablier ou cercle )
Sub joueBeepWindows2ApiBlack()
Dim MonWav As String
MonWav = "C:\Windows\Media\Windows Exclamation.wav" '... chemin et nom à adapter
ExecuteExcel4Macro ("CALL(""winmm"",""PlaySoundA"",""JCJJ"",""" & MonWav & """, " & 0 & "," & &H1 & ")")
End Sub
Sub joueBeepWindows3()
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\Windows\Media\Windows Exclamation.wav"")"
End Sub
dans le lien que tu donne on parle de synchronisation avec un msgbox ben on est en plein dedans
avec la tienne le message se déclencherait après la FIN !!! du beep et la fermeture de l'object playsound
Bonsoir patricktoulon
Tu as raison c'est nettement mieux
J'ai adopté ta solution
Encore merci et bonne fin de soirée
Cordialement