• Initiateur de la discussion Initiateur de la discussion job75
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

job75

XLDnaute Barbatruc

Pièces jointes

Re : Beep musical

Bonsoir Job75

Ton fil m'a remémoré celui-ci (que j'ai commis jadis dans le salon)
https://www.excel-downloads.com/thr...x-qui-savent-la-verite-ne-pas-diffusez.94768/
Et ici le plus c'est qu'avec le MIDI, on peut changer d'instrument 😉 et le son est plus mélodieux qu'avec le Beep
Si le cœur t'en dit, job75, je pense que tu pourrais concocter du bel ouvrage en MIDI, non?

Si Modeste Geedee* passe par ici, il pourra peut être m'expliquer pourquoi cela fonctionne aléatoirement 😉
(cf mes commentaires sur mes déboires dans le fil cité)
*:(Il devrait passer puisqu'il a liké le message cité ici, normal vu que le code initial est sien 😉 )

PS: Dans cet ancien fil, jeter un œil au fichier soumis par Mutzik (piano.zip), cela vaut le détour 😉
 
Dernière édition:
Re : Beep musical

Bonjour Jean-Marie, le forum,

Le Beep n'est guère mélodieux, mais il peut être utile pour de petits messages sonores.

Voici une version (2) améliorée avec :

- la création de 3 octaves

- le réglage de la hauteur (fréquence) du son.

A+
 

Pièces jointes

Dernière édition:
Re : Beep musical

Bonsour®
Il faudra sûrement étendre le clavier...
A+

🙄

Code:
Sub Generer_clavier()
On Error GoTo fini
  i = 0
  Position = 50
  largeur = 12
  Sheets.Add
   For i = 21 To 105
   [a1].Select: DoEvents
    '--------------- ajoute une touche
    ActiveSheet.Shapes.AddShape(msoShapeRoundedRectangle, 50#, 50, 14#, 60).Select
    Set Sh = Selection.ShapeRange
    Sh.Top = 100
    Sh.Name = "Touch" & Format(i, "000")
    Sh.Line.ForeColor.SchemeColor = 8
    Sh.Line.Weight=2
    x = i Mod 12
    '-------------- positionne et colorie la touche
    Select Case x
    Case 1, 3, 6, 8, 10   ' ----blanche
      Sh.Left = Position - ((largeur / 2) - 1)
      Sh.Height = 60
      Sh.Width = largeur - 2
      Sh.ZOrder msoBringToFront
      Sh.Fill.ForeColor.SchemeColor = 8
      Sh.Fill.BackColor.SchemeColor = 23
      Sh.Fill.TwoColorGradient msoGradientHorizontal, 3
    Case Else
      Sh.Left = Position   ' ----- noire
      Sh.Height = 90
      Sh.Width = largeur
      Sh.ZOrder msoSendToBack
      Sh.Fill.ForeColor.SchemeColor = 26
      Sh.Fill.BackColor.SchemeColor = 9
      Sh.Fill.TwoColorGradient msoGradientDiagonalUp, 3
      Position = Position + largeur
    End Select
    Next
    ' ----------------affectation macro aux touches
    'ActiveSheet.DrawingObjects.Select
    'Selection.OnAction = "MousePlay"
    '-----------------
    ActiveSheet.Shapes.AddShape(msoShapeRectangle, 30, 80, 640, 130).Select
    Selection.ShapeRange.Fill.PresetTextured msoTextureWalnut
    Selection.ShapeRange.ZOrder msoSendToBack
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
fini:
   End Sub


😎
to be continued ...
 
Re : Beep musical

Bonsour®
expliquer pourquoi cela fonctionne aléatoirement 😉

il s'agit d'API Windows, il est compliqué de trapper les erreurs systèmes...

concernant la gestion des ordres MIDI :
pour générer une note :
il faut sélectionner un canal, un instrument, une note, une durée, une extinction
tout manquement à cette séquence provoque un plantage de l'interface MIDI

je n'ai pas trouvé d'autre solution que de resetter cet interface , ou bien fermer et re-ouvrir Excel 🙁

Declare Function midiOutReset Lib "winmm.dll" _
(ByVal hMidiOut As Long) As Long


le soucis est positionner cette instruction : midiOutReset hMidiOut
dans la macro active

😎
to be continued...
 
Re : Beep musical

Bonsoir à tous

Merci Modeste Geedee d'avoir jeter un oeil ici.
Quand je dis aléatoirement, c'est que sur mon PC actuel (W7+XL2K13), je lance la macro (celle du fil que je cite)
Elle fonctionne ("Y a de la zik")
Je vaques à mes occupations, je relance plus tard la macro (sans avoir fermer Excel, ni le PC), et là plus de son.
Je ne comprends pas pourquoi.
PS: Cette macro fonctionne (pas toujours) et celle-ci (jamais ni même la variante de Mutzik)
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
677
Réponses
5
Affichages
646
D
Réponses
0
Affichages
795
D
U
Réponses
7
Affichages
1 K
G
Réponses
3
Affichages
1 K
Retour