Résolu XL 2016 Affichage dynamique webcam

ahart68

XLDnaute Nouveau
Bonjour à tous et toutes,

Je voudrais avoir en temps réel dans un userform, le retour image de la webcam.
Puis prendre une photo et l'enregistrer.
J'ai réussi à prendre une photo instantanée via le programme CommandCam, mais sans affichage dynamique.
Une idée ?
Merci d'avance.
 
Ce fil a été résolu! Aller à la solution…

ahart68

XLDnaute Nouveau
Bonsoir Patrick !!
Merci beaucoup pour ta réponse et ta réactivité.
Apparemment, c'est bien ce que je cherchais...ça à l'air de fonctionner, bien que je suis en 64bits.
Je vais essayer de faire quelques adaptations, mais le plus dur a été fait.
Je me permettrai de revenir vers toi au cas où je bloque...encore. ;-)
Merci beaucoup.!!
 

ahart68

XLDnaute Nouveau
@patricktoulon
J'ai intégrer ton userform camera dans mon fichier avec succès.
Puis après différentes modifs sur mon fichier, d'un coup je me rend compte que cer userform "LiveCam" ne démarre plus correctement : l'image de la caméra (comme l'étoile dans le bouton Snapshot) ne s'affiche plus...
Mais, chose "marrante", quand j'execute l'userform via Visual Basic (F5), il démarre et peut être utilisé correctement.
Une idée d'une raison possible ?
Merci d'avance pour ton aide !!
 

patricktoulon

XLDnaute Barbatruc
bonjour
ben il faudrait que j'examine le fichier je peux pas deviner en l'état
en tout cas tu sais ou chercher ;)
 

patricktoulon

XLDnaute Barbatruc
chez moi le bouton start fonctionne
c'est avec le dblclick sur cell que ça bloque
j'ai eu une erreur de protection de la feuille
 

ahart68

XLDnaute Nouveau
OK, mais lorsque tu l'ouvres via un dblclick cell, tu vois l'image de la cam ?
Moi pas, uniqument via VB et F5 !!
Et le msg protection écriture viens une fois l'userform cam fermé non ?
 

patricktoulon

XLDnaute Barbatruc
ben en fait la le fichier a planté
trop le fouilli dans ce truc
entre nous un fichier avec une protection dynamique venant du net je le ferme aussitôt
il me fait plein de truc bizarre
bref je n'ai pas le temps je suis sur un autre projet là ,sinon je referais tout ;)
 

ahart68

XLDnaute Nouveau
@patricktoulon

dsl encore moi....
Tout fonctionnait bien et soudainement (sans avoir touché au code) l'erreur "Un composant ActiveX ne peut pas créer l'objet" apparaît.
Est-il possible que cette erreur soit liée à une mise à jour ?
Comment puis-je y remédier à ton avis ?
Le code s'arrête là :
1593440178093.png

Si tu as le temps pour me conseiller...merci d'avance !!

Arno
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
remplace deja cette ligne en jaune par
With ActiveWindow.ActivePane: ptoPX = (.PointsToScreenPixelsY(72) - .PointsToScreenPixelsY(0)) / 72:End With

comme ca on a plus besoins d'aller lire le registre
 

patricktoulon

XLDnaute Barbatruc
Bonjour
il n'y a pas de raison que ca plante ici sauf absence du userform
écoute donne nous un fichier anonymisé ayant les même caractéristiques que ton fichier
travailler a l'aveugle ça me gonfle un peu ;)
 

ahart68

XLDnaute Nouveau
Le problème arrive même avec le 1er fichier que tu m'avais envoyé !!
Pourquoi maintenant (pb update?) ?
Ci-joint un fichier anonymisé avec ta dernière modif.

Désolé et merci d'avance pour ton aide !!
 

Fichiers joints

patricktoulon

XLDnaute Barbatruc
heu c'est quoi userformIP???
cette variable est instanciée nulle part???????
sans parler des variable non déclarées dans le click snapshot???????
ou est la fonction de création "RépertoireExisteCreation"
etc... etc...
quand j'ai dis anonymisé j'ai pas dit la moitié :rolleyes:
bref toujours est il que quand je le lance j'ai bien la cam

c'est assez pénible
on vous donne un truc sain et vous en faite une purée de quoic quoic

bref fait des efforts avec les fichiers que tu livre avec tout les fonctions(présentes) et variables déclarées dans le code sinon on ira pas loin
sincèrement tu en fait un ramdam pour concaténer un nom pour l'enregistrement

dis moi c'est sérieux çà
VB:
Private Sub SnapShot_Click()
jour = Day(Date)
mois_lettre = WorksheetFunction.Text(Date, "[$-409]mmm")
mois = Month(Date)
annee = Right(Year(Date), 2)
heure = TimeValue(Now)
datejour = jour & mois_lettre & annee
heure_mod = Replace(heure, ":", "")
If userformIP = 1 Then
   tag = Identification_form.TextBox_Tag.Value
Else
    tag = ActiveSheet.Name
End If

folder = "Audit_" & datejour
Call RépertoireExisteCreation(Environ("userprofile") & "\Desktop" & "\" & folder)
Chemin_save = Environ("userprofile") & "\Desktop\" & folder & "\" & tag & "_" & heure_mod & ".jpg"
SendMessage Hcamera, WM_CAP_FILE_SAVEDIB, 0&, ByVal CStr(Chemin_save)    'prend une photo

End Sub
à la fin je sais même plus quelle heure il est moi :p:p:p;)
 

ahart68

XLDnaute Nouveau
Dsl de ne pas être un maître VBA comme certainement vous tous sur ce forum :-(
...méa culpa....le fichier envoyé n'est pas complet...mais finalement peu importe... => Ton fichier de base fonctionnait, mais du jour au lendemain plus avec les erreurs reportées dans mes derniers msgs !!
Pourquoi aujourd'hui je ne serais plus en mesure de l’exécuter ?
Telle est la question....
Et vu que tu m'avais fourni ce fichier je pensais que cette erreur t'était compréhensible...
 

patricktoulon

XLDnaute Barbatruc
bien sur que je sais pourquoi
avant toi ça fonctionne
après toi ça ne fonctionne plus
tu a changé quoi
tu a ajouté quoi
tu a modifié quoi

c'est la qu'il faut que tu cherche
en tout cas chez moi ça fonctionne très bien sur w7 et 10 office 2007 et 2013 et 2016
sauf bien sur le click snapshot qui est une vrai poubelle maintenant
 

ahart68

XLDnaute Nouveau
Si même le premier fichier de base envoyé (et sans rajout ni modif de code) ne fonctionne plus, ça a plutôt l'air de ne pas être lié au code, mais au System ou autre paramétrage non ?
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas