Diaporama, défilement de photographies sur une feuille

CISCO

XLDnaute Barbatruc
Bonsoir à tous

En m'aidant des propositions de J. Boisgontier sur son site, j'ai essayé de faire un petit diaporama faisant défiler des photos allant de DSC_0101 à DSC_0104 prises dans le dossier "à peindre2".

Voila macro
Code:
Dim p As Integer, pas As Integer, temps As Date, fichier as String, répertoirePhoto As String
-----------
Sub Début()
  répertoirePhoto = "C:\Users\à peindre2\" ' A adapter à chaque cas
  fichier = "DSC_0" 'A Adapter à chaque cas
  pas = 10
  majHeure
End Sub
----------
Sub majHeure()
  For p = 1 To 4
  Set img = ActiveSheet.Pictures.Insert(répertoirePhoto & fichier & 100 + p & ".jpg")
  Application.Wait (Now + pas)
  Next
End Sub
----------
Sub auto_close()
 On Error Resume Next
 Application.OnTime temps, Procedure:="majHeure", Schedule:=False
End Sub

Cela fonctionne, mais plus je fais des tests, plus cela rame. Les deux, trois premières fois, c'est OK, mais après, c'est long, c'est long... Si je copies le code et le mets dans un autre fichier, cela fonction correctement au début, puis cela rame de nouveau...

Est-ce que vous auriez une explication, une ou des améliorations à me proposer...

@ plus

P.S : Si vous voulez tester le fichier en pièce jointe, il faut modifier le chemin d'accès et le nom du fichier.
 

Pièces jointes

  • DIAPORAMA5.xlsm
    12.7 KB · Affichages: 62

CISCO

XLDnaute Barbatruc
Re : Diaporama, défilement de photographies sur une feuille

Bonsoir à tous

Merci Lone-Wolf. Ta méthode est très pratique, puisque le nom des photos peut être quelconque, et il ni y a pas besoin d'en faire la liste non plus. Ca fonctionne, sauf un petit détail... Comment fait-on pour relancer le défilement ? J'ai essayé avec le bouton "Arrêter", mais cela plante sur la ligne Feuil1.Image1.Picture = LoadPicture(repertoire & NomPhoto) dans le module 1.

D'ailleurs, plutôt qu'une ouverture avec un Workbook_open, cela serait mieux que cela soit avec un bouton. De mon coté, je vais essayer tout seul, mais si par hasard...

@ plus
 

Lone-wolf

XLDnaute Barbatruc
Re : Diaporama, défilement de photographies sur une feuille

Bonjour Cisco,

personnellement j'ai essaié de faire partir le diapo à partir du bouton sans succès. Je n'ai pas testé en essayant d'ajouter une autre sub en y mettant ce qu'il y a dans Worbook_Open.


A+ :cool:
 

Lone-wolf

XLDnaute Barbatruc
Re : Diaporama, défilement de photographies sur une feuille

Re CISCO

Cette fois c'est ok.

Supprime les lignes pour les images dans workbook_Open(), et copie ceci:


Code:
Sub OnOff()
Call Arreter
  'Call PlaySound(&H1, 0&, SND_ASYNC Or SND_FILENAME)
    If flag Then
        flag = False
  NomPhoto = Dir(repertoire & "*.jpg")
 Call majHeure
'Son = "amore-grande.wav"
'WavFile = repertoire & Son
'Call PlaySound(WavFile, 0&, SND_ASYNC Or SND_FILENAME)
        Exit Sub
    End If
        flag = True
  Feuil1.Image1.Picture = Nothing
Do
If flag Then Exit Do
DoEvents
Loop
End Sub

Je laisse en commentaire l'appel pour le son au cas où tu voudrais l'ajouter.




A+ :cool:
 

Statistiques des forums

Discussions
314 211
Messages
2 107 328
Membres
109 804
dernier inscrit
Dramac