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 :

Synchroniser une image animée et du son dans un UserForm [XL-2013]


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Points : 71
    Points
    71
    Par défaut Synchroniser une image animée et du son dans un UserForm
    salut à tous
    J'ai posté cet après-midi une demande d'aide pour essayer de synchroniser une image animée et du son dans un Userform, mais je me suis trompé de rubrique.. Je recommence donc:

    Je termine les derniers détails d'une application de 'petit calcul' (addition soustraction etc.) pour aider des gamins de 6-7 ans à apprendre à compter.
    L'animation que je cherche à mettre au point est destinée à égayer un peu l’exercice et à maintenir ainsi leur attention.
    Le bout de code joint est une toute petite partie de l'application.
    Les séquences images et sons sont correctes mais je ne réussis pas à les synchroniser.
    Si quelqu'un a une idée...
    On m'a déjà fait remarquer qu'Excel n'était pas le bon instrument pour ce type de travail, mais il ne s'agit ici que d'une toute petite partie de l'application (une cerise sur le gâteau en quelque sorte).
    Pour l’exercice de calcul lui même, sa présentation et son déroulement, Excel et VBA ont très bien convenus.
    Merci d'avance pour le coup de main.
    L.P.
    Fichiers attachés Fichiers attachés

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonsoir
    tu entends quoi par synchroniser ??
    j'ai essayé et mis a part que les applaudissements continuent même après avoir arrêté les images ca fonctionne
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #3
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 957
    Points : 9 297
    Points
    9 297
    Par défaut
    hello,
    avec playsound on ne contrôle pas l'arrêt de lecture d'un fichier audio. Il vaut mieux utiliser mcisendstring qui a la commande close pour arrêter la lecture d'un fichier comme ceci par exemple :
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    Private Declare PtrSafe Function mciSendString Lib "winmm.dll" Alias _
       "mciSendStringA" (ByVal lpstrCommand As String, ByVal _
       lpstrReturnString As Any, ByVal uReturnLength As Long, ByVal _
       hwndCallback As Long) As Long
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Sub SeQuence()
    Dim x As Integer, iMg As Integer, ChrOnO As Double, SonOk As Boolean
        x = 1: iMg = 1: MarChe = True: SonOk = True
    DoEvents
    Dim AudioFile
    AudioFile = ActiveWorkbook.Path & "\" & "Applaudissements.WAV"
    ChrOnO = Timer
    While MarChe = True
            Me.Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\" & iMg & ".gif")
            If SonOk = True Then
            mciSendString "play " & AudioFile, 0&, 0, 0
            End If
                Me.Label1.Caption = "Image" & iMg & "   x= " & x
        While Timer - ChrOnO < 0.2
        Wend
            ChrOnO = Timer: iMg = iMg + 1: SonOk = False ' le son une seule fois
                  If iMg = 8 Then iMg = 1:
        x = x + 1:
            If x = 10 Then MarChe = False  'Nb. de passages
    DoEvents
    Wend
    ' arrêt de la lecture du fichier audio
    mciSendString "close " & AudioFile, 0&, 0, 0
    End Sub
    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Déjà Vba n'est pas multi tache, quoi qu'il arrive tu ne pourras pas exécuter le changement des images et la gestion du sont.

    Si tu place autant d'images que l'animation en utilise, tu pourras en agissant sur visible true/false t'épargner le temps de chargement!

    Il existe de outils gratuits pour faire de gif animé qui peuvent gérer le son et avec un WebBroser charger le gif et là plus de problème !

  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut Re
    Allez je vous donne. Mon astuce
    Enregistre u' fichier. Txt vide change lui son extention pour wave et au bouton stop lance la. Lecture de celui ci
    Voila
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  6. #6

  7. #7
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Points : 71
    Points
    71
    Par défaut [XL-2013] Synchroniser une image animée et du son dans un UserForm
    Salut à tous et merci pour vos réponses que je n'ai pas encore eu le temps d'analyser complètement.
    - Réponse à la 1° interrogation de Patrick:
    Par 'synchroniser' j'entends 'en même temps' c'est à dire ici, après l'affichage de la 1° image j'aurais souhaité que le son démarre pour avoir concomitance entre 'geste' et 'parole' si je puis dire.
    Ensuite, si souhaité, il est facile d'égaliser les temps en jouant sur le nombre de passages mais cet aspect est secondaire.

    La fonction 'PlaySound' accepte des arguments 'dwFlags' dont l'un d'eux m'a laissé à penser que la routine en cours pouvait ne pas être interrompue par l'exécution du fichier son.
    ---------------------------------------------------------------------------------------
    "The uFlags parameter specifies how the sound is to be played.
    You can combine multiple options by adding their respective values together and passing the sum in the uFlags parameter."

    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
    Const SND_SYNC = &H0        ' (Default) Play the sound synchronously. Code execution
                                ' pauses until sound is complete.
     
    Const SND_ASYNC = &H1       ' Play the sound asynchronously. Code execution  ***********
                                ' does not wait for sound to complete.                              ***********
     
    Const SND_NODEFAULT = &H2   ' If the specified sound is not found, do not play
                                ' the default sound (no sound is played).
     
    Const SND_MEMORY = &H4      ' lpszSoundName is a memory file of the sound.
                                ' Not used in VBA/VB6.
     
    Const SND_LOOP = &H8        ' Continue playing sound in a loop until the next
                                ' call to sndPlaySound.
     
    Const SND_NOSTOP = &H10     ' Do not stop playing the current sound before playing
                                ' the specified sound.
    --------------------------------------------------------------------------------------
    Il est probable que je n'ai pas su l'appliquer.

    P.S. Les BTN que j'ai ajoutés sur le UserForm ne sont là que pour la discussion.
    Dans l'application la routine 'son et image' (Sub SeQuence) se declanche seule dès que le gamin a trouvé le bon résultat. Elle fonctionne bien mais images et son sont successifs et non ensembles. C'est tout et seul problème

    Je languis d'essayer la fonction ' mcisendstring' que je ne connaissais pas (Merci à jurassicpork).
    "Je dirais quoi !" dès que possible.

    Je vais réfléchir un peu sur l'astuce de Patrick (fichier texte). A première vue je ne comprends pas bien et là aussi
    "Je dirais quoi !" dès que possible.

    Encore merci à vous tous.

  8. #8
    Invité
    Invité(e)
    Par défaut
    Et le fait de convertir tes images et ton son en vidéo?

    Ça lierais le geste et la parole!
    Fichiers attachés Fichiers attachés
    Dernière modification par Invité ; 07/10/2016 à 14h42.

  9. #9
    Rédacteur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2013
    Messages
    947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 947
    Points : 4 058
    Points
    4 058
    Par défaut
    Oui, tu peux utiliser Playsound pour lire du son wav, une fois, en boucle avec ou sans interrompre le traitement, et stopper un son a volonté.

    API pour jouer le son d'un fichier WAV :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Declare Function PlaySound Lib "Winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
    Public Const pcsSYNC = 0 ' Suspend l'exécution du code tant que le son n'est pas fini.
    Public Const pcsASYNC = 1 ' Joue le son tout en continuant l'exécution du code.
    Public Const pcsLOOP = 8 ' Joue le son en boucle, tant qu'un nouveau son n'est pas à jouer.
    Public Const pcsNOSTOP = 16 ' N'interrompe pas le son en cours.
    Exemples :
    Joue le fichier laser-01.wav, une seule fois, sans interrompre le traitement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call PlaySound(ThisWorkbook.Path & "\laser-01.wav", pcsASYNC)
    Joue le fichier laser-01.wav, en boucle, sans interrompre le traitement, tant qu'un autre appel à la fonction n'est pas
    réalisé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call PlaySound(ThisWorkbook.Path & "\laser-01.wav", pcsLOOP + pcsASYNC)
    Force la fin d'un son joué en boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call PlaySound(" ", pcsASYNC)
    Plus d'informations sur les API pour gérer la souris, le clavier et le son au chapitre IX du tome 2.
    Cordialement.

  10. #10
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Points : 71
    Points
    71
    Par défaut
    Salut à tous et merci pour vos réponses.
    Merci à "dysorthographie" pour son lien qui n'est pas inintéressant loin sans faut, mais dans le contexte de cette discussion, j'ai du 'détricoter' un fichier .gif existant pour faire la simulation de mixage au lieu de le construire.
    Bien sûr que le fichier vidéo est la solution mais il faut installer un contrôle supplémentaire (pas facile pour tout le monde) et la portabilité en serait de ce fait dégradée.
    Merci à Laurent pour ses précisions sur PlaySound mais je n’ai toujours pas réussis à rendre le traitement asynchrone. (Si tu as un moment essaye de l’intégrer dans le bout de code que j’ai posté au début de la discussion pour simuler une sorte de mixage avec l’image. Je voudrais voir comment ça fonctionne. Merci d’avance)

    Ci-joint l'image finale de l'appli (les opérations 'comme à la main') lorsque le gamin a trouvé la solution et que l'animation apparaît en guise d'encouragement.
    D'autres petits fichiers wav sont appelés de façon aléatoire après chaque réponse (approbation ou le contraire selon le cas).

    L.P.
    Images attachées Images attachées  

  11. #11
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Un webbroser est un contrôle natifs à vba , donc pas de contrôle supplémentaire et il va gérer l'affichage de la vidéo!

    Avec un outil de mixage vidéo, tu charge te gif tu définition le temps d'exposition de chaque image 0,5 soit 25 image par secondes.

    Ce que j'ai proposé à été fait vite fait mal fait, mais j'ai utiliser l'outil gratuit de Microsoft qui n'est pas le mieux car il faut retoucher la taille de images, alors que du'il suffirait de définir le fond de l'image pour régler le noir de par et d'autres de l'image.

    Mais bien évidemment tu es le seul maître à bord!
    Dernière modification par AlainTech ; 09/10/2016 à 21h13. Motif: Fusion de 2 messages

  12. #12
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    ou comme j'ai dis précédemment
    ouvrir un bloknote rien ecrire puis enregistrer sous "stop.Wav" et donc
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    Option Explicit
    Dim MarChe As Boolean
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal _
    lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Private Sub Arret_Click()
        MarChe = False
    PlaySound (ActiveWorkbook.Path & "\" & "stop.WAV"), &H1, 1
    End Sub
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Private Sub GO_Click()
        Call SeQuence
    End Sub
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Private Sub QUIT_Click()
        Unload Me
        Application.EnableEvents = True
    End Sub
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Private Sub UserForm_Initialize()
    End Sub
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Sub SeQuence()
    Dim x As Integer, iMg As Integer, ChrOnO As Double, SonOk As Boolean
        x = 1: iMg = 1: MarChe = True: SonOk = True
    DoEvents
    ChrOnO = Timer
    While MarChe = True
            Me.Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\" & iMg & ".gif")
            If SonOk = True Then
                PlaySound (ActiveWorkbook.Path & "\" & "Applaudissements.WAV"), &H1, 1
    '                DoEvents
            End If
                Me.Label1.Caption = "Image" & iMg & "   x= " & x
        While Timer - ChrOnO < 0.2
        Wend
            ChrOnO = Timer: iMg = iMg + 1: SonOk = False ' le son une seule fois
                  If iMg = 8 Then iMg = 1:
        x = x + 1:
            If x = 10 Then
            MarChe = False  'Nb. de passages
    PlaySound (ActiveWorkbook.Path & "\" & "stop.WAV"), &H1, 1
    End If
    DoEvents
    Wend
    End Sub
    et puis voila

    j'ajouterais aussi que tu a un control que l'on appel image List pour stoker plusieurs images et donc plus la peine d'avoir un dossier avec des images et la on peu parler de transportabilité
    et combien même sans on peut très bien mettre x images et les afficher dans ta boucles et c'est la même chose comme ca la encore plus de dossier simplement le fichier

    et il y en a bien d'autres
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  13. #13
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Points : 71
    Points
    71
    Par défaut
    Salut Patrick,
    Merci d'avoir pris un peu de ton temps pour te pencher sur ce petit problème qui n'est en fait qu’un détail même pas indispensable à régler.
    Ma curiosité a été attisée par l'emploi d'un argument de la fonction 'Playsound' qui précise qu'un fichier 'wav' peut être 'joué' sans interruption du code en cours.
    Je pensais donc utiliser cette fonctionnalité pour simuler une sorte de mixage entre son et image.
    J'espérais que la boucle de présentation des images se déroulerai pendant l'exécution du 'wav'.
    Jusqu'ici je n'ai pas réussi et c'est mon seul souci.
    Il se trouve que deux ou trois fois, tout à fait par hasard, le son et les images se sont déroulés en même temps sans que je puisse comprendre pourquoi.
    Je me demande si ma machine, assez ancienne et qui rame un peu, n'est pas la cause.
    Je ne souhaite pas arrêter le son, bien au contraire, je préfèrerai qu'il continue pendant l'animation.
    L.P.

  14. #14
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut
    Bonjour

    dans le dernier model de code que j'ai poster le son s'arrête après l'affichage de la dernière image il y a aussi le moyen de l'arrêter au bouton stop

    et oui si ton pc date un peu et qu'il est un peu faiblard en effet il peut y avoir des désynchronisation graphique bien que la on est sur un mixe de 7 images (pas vraiment important en terme de ressource) mais n'ayant pas le fichier dans son intégralité je ne peut t'en dire plus

    pense aussi a ce que je t'ai dis met tes image en stock dans ton userform plus besoins de fichiers externes dans un dossier

    j'aimerais bien avoir le code qui métrise la surveillance mathématique des controls textbox des opérations

    je suis sur que l'on pourrait faire plus simple et moins lourd

    re
    je viens de m'apercevoir que ton fichier est corrompu attention ca va rendre excel tout blanc(white screen)
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  15. #15
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Points : 71
    Points
    71
    Par défaut
    Salut Patrick, merci pour ta patience…
    Ci-joint donc le fichier en cours de développement.
    Les multiplications (à un seul chiffre multiplicateur) ne sont pas encore traitées de même que plusieurs détails de présentation sont encore à revoir. Positionnement dynamique du trait et du signe etc...
    Un clic sur le dragon en haut à gauche montre le résultat attendu (c’est pour le développement) de même que certains labels qui sont cachés.
    L.P.
    Fichiers attachés Fichiers attachés

  16. #16
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonsoir lu pic
    bon ben déjà si je clique sur le bouton pour l'userform ca plante excel tout bonnement obligé de fermer excel

    pour une simple question d'opération niveau primaire je trouve que tu t' es compliqué la vie
    je vais regarder un peu ce qui est caché et le code pour essayer de deviner comment tu envisage les choses ce sera un grand pas
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  17. #17
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Bonjour
    Les choses ne sont déjà pas si simples avec VLC et deux pistes d'un même fichier video.
    Que dire alors d'une synchronisation de deux fichiers distincts !
    Et les cas peuvent être variés :
    - cas de décalage constant
    - cas de décalage progressif
    - cas de décalage progressif après décalage constant
    Et quelquefois, à la clé : un recalage réussi sur un pc peut être à reconsidérer sur un autre pc
    L'une des solutions envisageables (mais relou de chez relou) passe par le fractionnement et la lecture de "séquences" des deux fichiers.
    La vraie question, maintenant : Est-ce là la vocation d'un tableur ?
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  18. #18
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Points : 71
    Points
    71
    Par défaut
    Salut Patrick,
    Désolé d’avoir fait planter Excel sur ta machine. D’autant plus étonnant que sur la mienne c’est nickel.

    Je vais te dire pourquoi je me suis compliqué la vie. A + de 70 il faut s’occuper et entretenir les 3 neurones qui restent, mais le plus important c’est qu’avec le ‘sujet de test’ (7 ans tout juste) une addition un peu longue sur une feuille avec papier et crayon c’est laborieux. Après 5 ou 6 opérations c’est le décrochage.

    Avec cette application amusante qui est loin d’être parfaite, il faut siffler la fin de la partie.
    Voilà pourquoi.

    A+
    L.P.

  19. #19
    Invité
    Invité(e)
    Par défaut
    Bonjour,


    Nom : Gorille.gif
Affichages : 931
Taille : 9,6 Ko
    Fichiers attachés Fichiers attachés
    Dernière modification par Invité ; 11/10/2016 à 15h44.

  20. #20
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Points : 71
    Points
    71
    Par défaut
    Salut à tous,
    J’ai porté l’application sur une machine W10 & Office 2016+ et effectivement le code plante.
    Le problème vient de la fonction « PlaySound » qu’il convient de modifier un peu.
    Il suffit de rajouter ‘PtrSafe’ entre les mots ‘Declare’ et ‘Function’ et tout rentre dans l’ordre.
    N.B. Ce rajout ne l’empêche pas de fonctionner sur W7 & Excel 2013 (pc sur lequel je l’ai developpé)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Declare PtrSafe Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName _
                As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long
    Ceci dit il y a un plus. Sur ce PC, la simulation de mixage marche et même si ce n’est pas aussi fluide que dans un mp4, le son démarre après la première image et ne s’interrompt pas pendant le défilement des autres images.
    Le problème est résolu.
    Merci à tous ceux qui ont participé.
    L.P.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 5
    Dernier message: 07/10/2016, 11h27
  2. [XL-2007] Importer une images en fonction de son nom dans l'exporateur windows
    Par Aziz_Az dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 07/06/2014, 14h12
  3. Insertion d'une image animée dans une page jsp
    Par marwa_marwa dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 19/03/2013, 15h26
  4. comment afficher une image animée dans un formulaire
    Par dadamovic dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 13/05/2006, 18h59
  5. Afficher une image JPG qui se trouve dans une bdd
    Par Harry dans le forum Bases de données
    Réponses: 6
    Dernier message: 27/02/2004, 10h51

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