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 :

Problème d'insertion d'image en vba. BMP OK, JPG NOK !


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2015
    Messages : 2
    Par défaut Problème d'insertion d'image en vba. BMP OK, JPG NOK !
    Bonjour à tous,

    après avoir épluché une bonne partie des sujets relatifs à mon problème, je voudrais up celui-ci pour vous faire part d'un problème qui me paraît assez bizarre.
    Je suis un peu coincé donc, voici les détails :

    J'ai monté un VBA sous Excel permettant, en cliquant sur un bouton, de lancer un exécutable qui prend une photo à partir d'une webcam et en fait un BMP.

    Suite à cette génération de fichier, j'appelle un autre exécutable qui convertit le BMP en JPG.

    Pour finir, je charge l'image dans l'Excel et la positionne dans le document.

    Oui mais voila, après mes nombreux tests, autant l'image en BMP s'affiche Nickel, autant celle convertie en JPG ne veut pas s'afficher, rien à faire !

    J'ai essayé avec différents convertisseurs en ligne de commande, dont imagemagick, j'obtiens toujours la même chose, pas de message d'erreur, mais un beau carré vide avec la mention "Impossible d'afficher l'image".
    Bien que la solution BMP fonctionne, elle n'est pas viable car le document fait déjà 2 Mo après avoir indséré 2 images. J'en ai une trentaine à insérer comme ça.

    Y a t'il un problème avec l'insertion d'image en JPG ?? Merci d'avance.

    Voici le code :

    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
    Public Function PrendrePhoto(posLeft As Integer, posTop As Integer, width As Integer, height As Integer, nomFic As String)
    Dim RetVal
     
        ' Make sure the current directory is set to the one
        ' where the Excel file is saved
        ChDir (ActiveWorkbook.Path)
     
        If Dir(nomFic + ".bmp") > "" Then
           ' Suppression de la dernière image
            Kill (nomFic + ".bmp")
        End If
     
        If Dir(nomFic + ".jpg") > "" Then
            Kill (nomFic + ".jpg")
        End If
     
        ' Capture new image
        RetVal = Shell("CommandCam.exe /preview /delay 2000 /filename " + nomFic + ".bmp", vbHide)
     
        ' Wait until image file is definitely there
        While Dir(nomFic + ".bmp") = ""
        Wend
     
        ' Short delay to let new file finish saving
        Application.Wait (Now + TimeValue("00:00:01"))
     
        ' Conversion de l'image en JPG
        ' RetVal = Shell("imagemagick/convert.exe " + nomFic + ".bmp " + nomFic + ".jpg", vbHide)
        RetVal = Shell("BMP2JPG.exe " + nomFic + ".bmp " + nomFic + ".jpg", vbHide)
     
        While Dir(nomFic + ".jpg") = ""
        Wend
     
        ' Load new image into image object on spreadsheet
        ' Image1.Picture = LoadPicture("image.bmp")
     
        ' Insertion de l'image avec un lien externe
        ' ActiveSheet.Pictures.Insert(nomFic + ".bmp").Select
     
        ' Insertion de l'image embarquée dans le document
        ActiveSheet.Shapes.AddPicture Filename:=nomFic + ".jpg", linktofile:=msoFalse, savewithdocument:=msoCTrue, Left:=posLeft, Top:=posTop, width:=width, height:=height
     
     
    End Function

  2. #2
    Nouveau candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2015
    Messages : 2
    Par défaut
    Bon ben j'ai trouvé tout seul,

    pour ceux que ça intéresse : ATTENTION a la vitesse d'exécution d'un script qui appelle des Shell() !

    Le fichier se chargeait dès qu'il apparaissait dans le répertoire, mais n'était pas encore complet ! Résultat, image corrompue dans l'Excel, alors qu'il était bien dans le répertoire

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Par défaut Insertion image
    le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Shapes.AddPicture
    nécessite en effet d'indiquer les hauteurs et largeurs de l'image, ce qui est parfois problématique

    Pour pallier à cela, d'abord insérer l'image avec le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Pictures.Insert
    mettre en mémoire les hauteur et largeur
    effacer cette image
    la ré-insérer avec le premier code, en respectant le rapport H/L mémorisé

  4. #4

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème d'insertion d'image en vba
    Par Aurore24 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/03/2011, 11h20
  2. Problème d'insertion d'image dans un tableau
    Par aminos40 dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 2
    Dernier message: 01/06/2007, 09h54
  3. problème d'insertion d'images
    Par captainflex dans le forum Ruby on Rails
    Réponses: 5
    Dernier message: 20/05/2007, 23h20
  4. Problème d'insertion d'image dans une fenêtre.
    Par Antigonos Ier Gonatas dans le forum Tkinter
    Réponses: 2
    Dernier message: 26/08/2006, 12h44
  5. [MySQL] Problème d'insertion d'image en base
    Par yokyok dans le forum PHP & Base de données
    Réponses: 19
    Dernier message: 16/05/2006, 11h01

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