IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[VBA EXCEL]Message muet sur site perso


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut [VBA EXCEL]Message muet sur site perso
    Bonjour

    J'ai un code qui me permet de lire plusieurs sons dans un jeu de logique. Tout marche bien en local, et on entend les sons. J'ai mis le jeu en ligne sur un site perso, et il est devenu muet. Donc le jeu fonctionne sans le son(avec un appel API).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Public Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" _
    (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As _
    Long) As Long
     
    sub defin()
    m8(1, 0) = "joues.wav": m8(1, 1) = "gagnes.wav"
    m8(2, 0) = "jouev.wav": m8(2, 1) = "gagnev.wav"
    End Sub
     
     
    Sub son1()
       ' sons ou voix
     
        m7 = ThisWorkbook.Path + "\" + m8(f4, f8)
            x1 = PlaySound(m7, 0, 2)
     
    End Sub
    Merci de me venir en aide

    Cordialement

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    Que vaut "ThisWorkbook.Path", d'apres toi, quand tu as mis le jeu en ligne?
    Bah en fait, il doit retourner le chemin d'un fichier dans Temporary Internet Files ou dans Temp, non? Et bien il est fort possible que dans ce dossier, les wav ne s'y trouvent pas, surtout sur mon ordi...
    Le mieux ce serait de les incorporer directement dans ton fichier Excel : Menu Insertion>Objet>Son wav...

  3. #3
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut
    Bonjour

    Merci pour ton aide dadavyvy. J'ai essayé d'incorporer les sons "wav" dans excel, mais je ne connais pas la procédure à utiliser. Une aide serait la bienvenue! Merci d'avance

    Cordialement

  4. #4
    Rédacteur/Modérateur
    Avatar de beekeep
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2 005
    Points : 3 325
    Points
    3 325
    Par défaut
    Lut,

    je ne connais pas le sujet mais pourquoi les sons ne sont pas en ligne directement ??

    cela marcherai de la meme facon en local qu'en ligne avec les chemins absolus .. non ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    1/ Dans menu Insertion>Objet
    2/ Dans onglet 'Nouvel Objet', choisir dans la liste 'Son wave' et cliquer sur "OK"
    3/ Un nouvel objet est alors inséré, hachuré, et une fenêtre du Magnétophone de Windows est alors apparue.
    4/ Dans le menu Edition>Insérer un fichier... Aller chercher le fichier en question.
    5/ Fermer le magnétophone.

    6/ Manipulation avec VBA -> exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        ActiveSheet.OLEObjects("Objet 1").Visible = False
        ActiveSheet.OLEObjects("Objet 1").Verb Verb:=xlPrimary ' Lance la 1ere action de l'objet quand on fait un clique droit dessus

  6. #6
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut
    Bonsoir

    Incorporer les sons me semble compliqué!!!
    J'envoie l'adresse du site perso. On peut, soit jouer en ligne, soit télécharger le jeu. Les sons se trouvent dans "sub son1()", et sont définis dans "sub nimb()". Encore merci pour toute l'aide que je reçois.

    http://perso.orange.fr/alexr/index.html

    Cordialement

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    J'ai regarde ton fichier :
    1/ je te mets en pièce jointe tes fichiers wav incorporés dans un fichier Excel. Tu n'as plus qu'à les copier et les coller dans ton fichier à toi.
    Rem. J'ai nommé chaque objet comme le nom du fichier wav, mais sans l'extension
    2/ Tu peux alors facilement modifier ta procedure son1() en :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub son1()   ' sons ou voix
        nom_son = m8(f4, f8) ' fichier son avec extension
        nom_son = Left(nom_son, Len(nom_son) - 4) ' nom objet sans extension
        Feuil1.OLEObjects(nom_son).Verb Verb:=xlPrimary
    End Sub
    3/ Quand je lance ton fichier, il y a plusieurs erreurs chez moi, dues au fait que ta feuille est protégée; il faut donc penser à mettre des Feuil1.Unprotect au début et des Feuil1.Protect à la fin de tes procédures...
    4/ Pense à bloquer les double-cliques dans tes cellules :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
        Cancel = True
    End Sub

  8. #8
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut
    Bonjour

    Merci pour toutes tes interventions dadavyvy. Je stresse à l'idée d'apporter toutes ces modifs à mon programme, car je ne maîtrise pas ce domaine. Peux-t'on avoir le son avec une autre méthode? cela m'arrangerait beaucoup... Je te tiens au courant de mes décisions.... Encore merci pour ton aide

    PS : dans un autre registre, je cherche un compteur de visiteurs actuellement en ligne pour mon site. Tous ceux que je trouve ne fonctionnent pas. Aurais-tu une idée?

    Cordialement

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    Bah en fait ce que je t'ai fait est hyper simple, tu n'avais plus qu'à copier les objet et les coller dans ton classeur Excel. Et modifier la fonction son1() comme je te l'ai dit.

    Concernant le compteur, cela n'a plus rien avoir avec le VBA. Je t'envois donc un MP...

  10. #10
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut
    Bonjour

    J'ai lancé ta macro. Elle fonctionne dans un environnement simple, mais dans mon programme, c'est beaucoup plus ardu à mettre en oeuvre. J'ai passé des heures, et ta macro dérègle tout. Si une autre procédure existe, je suis preneur, car je suis découragé. Encore merci pour ton aide....

    Cordialement

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    Moi j'ai modifié ton fichier en 2 secs avec le code que je t'ai donné et les objets insérés sur la feuil1, et ça fonctionne sans probleme, mis à part les pbls de Protection de la feuille.

    M'enfin bon, puisque tu insistes vraiment...
    As-tu lu (j'ai fait une recherche sur Google) : http://silkyroad.developpez.com/VBA/WindowsMediaPlayer/ ?
    Je l'ai juste survolé, mais je crois que tu dois déclarer les bonnes références pour que ça fonctionne...

    Néanmoins, voici un peu de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        'Dim wmp As New MediaPlayer.MediaPlayer '-> seulement si tu déclares la réf. Windows Media Player (msdxm.ocx)
        Set wmp = CreateObject("MediaPlayer.MediaPlayer") '-> sans déclaration de la réf.
        wmp.Open "http://perso.orange.fr/alexr/nimb26/gagnes.wav"
        Set wmp = Nothing
    La seule lourdeur avec ce code, c'est qu'on doit se connecter à internet à chaque son joué...

  12. #12
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut
    Bonjour

    Mille fois merci pour ton aide. Je vais essayer cette procédure, et je te tiens au courant....

    Cordialement

Discussions similaires

  1. [XL-2007] Exporter feuille Excel sur site perso
    Par Lexot2 dans le forum Excel
    Réponses: 1
    Dernier message: 23/03/2012, 10h43
  2. [VBA] Excel Récuperer Macro sur fichier corrompu
    Par Phenx dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/01/2009, 13h13
  3. [Vba-Excel] Récupérer événement sur une cellule
    Par steps5ive dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/04/2006, 20h27
  4. Images n'apparaissent sur site perso chez Free
    Par kcizth dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 01/02/2006, 12h35
  5. [VBA Excel] différentes plages sur différentes feuilles
    Par loacast dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 30/11/2005, 13h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo