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 :

Userform : charger une image et son aperçu


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2014
    Messages : 20
    Points : 9
    Points
    9
    Par défaut Userform : charger une image et son aperçu
    Bonjour,

    J'ai aujourd'hui un Userform qui fonctionnait jusqu'à quelques jours. Le but est de sélectionner une image avec le bouton "Browse", puis un apreçu s'affiche, et enfin avec le bouton "Save", les images préchargés s'affichent dans la feuille 2.

    J'ai changé tellement le code qu'aujourd'hui je n'arrive plus à sélectionner une image avec.

    Je le code en question dont l'erreur suspecte est en rouge. Je sollicite votre aide.
    Le debugger me dit "Method or data member not found" dès que je clique sur Browse. Il doit y avoir un problème de syntaxe (voire de librairie ? mais ça je ne pense pas)
    Merci d'avance :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Browse1_Click()
    BoutonImage 1
    With Feuil2.Image1
      .Left = 300
      .Top = 10
      .Width = 500
      .Height = 300
      .Picture = LoadPicture(imgf(1))
      .PictureSizeMode = fmPictureSizeModeZoom
    End With
    End Sub

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Bonjour,

    Ça manque de détails et il n'y a rien en rouge...
    Sur quelle ligne apparaît l'erreur ?
    Est-ce que les noms utilisés sont toujours bons ?

    BoutonImage 1
    With Feuil2.Image1
    Qu'est-ce que BoutonImage 1 ?
    Est-ce que l'image se nomme bien Image1 ?

    .Picture = LoadPicture(imgf(1))
    Que vaut imgf(1) ?
    MPi²

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2014
    Messages : 20
    Points : 9
    Points
    9
    Par défaut
    Merci pour ton retour.
    J'ai mis à jour mon premier message avec en jaune ce qui est surligné en fluo sur l'éditeur vba, et en rouge ce qui est surligné par la souris comme étant la cause principale suspectée.

    Et je joins aussi le fichier pour être plus clair, ça vaut mieux qu'un long discours.
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Je pense que tu doives changer cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    With Feuil2.Shapes("Image1")
    MPi²

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2014
    Messages : 20
    Points : 9
    Points
    9
    Par défaut
    Merci, on progresse : la fenêtre pour ouvrir mon fichier s'active, et l'image se charge dans l'aperçu. En revanche, un code se génère juste après :
    erreur 438 : propriété ou méthode non gerce par cet objet
    Le débogueur me renvoie à la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     .Picture = LoadPicture(imgf(1))
    Qui est liée au Module :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public img As Variant
    Public imgf(1 To 2) As Variant
     
    Sub BoutonImage(btn As Byte)
    img = Application.GetOpenFilename("image(*.jpg),*.jpg")
    If img = False Then Exit Sub
    imgf(btn) = img
    With UserFormCR.Controls("Image" & btn)
      .Picture = LoadPicture(img)
      .PictureSizeMode = fmPictureSizeModeZoom
    End With
    End Sub
    J'ai tenté d'ajouter des Shapes un peu partout dans le module, sans succès.

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Tu pourrais trouver des idées ICI
    MPi²

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2014
    Messages : 20
    Points : 9
    Points
    9
    Par défaut
    Merci, j'ai tout essayé, j'y comprends rien ça ne marche pas alors qu'avant ça fonctionnait. Ca fait 1 mois que je cherche, ça me rend dingue.

  8. #8
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Je viens de réessayer ton fichier et il fonctionne bien... plutôt étrange parce que j'avais aussi une erreur en l'essayant l'autre jour.
    Suite à ton message que j'ai vu sur un autre site, j'ai réessayé pour voir s'il y avait une différence, mais non... ça fonctionne comme je pense qu'il devrait le faire (?!)

    Essaie de faire une réparation d'Excel pour voir si ça réglerait le problème... Ou peut-être supprimer tes contrôles Image et en remettre des nouveaux...
    MPi²

Discussions similaires

  1. [XL-2010] Charger une image grâce à un userform
    Par Valoche37 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 02/01/2012, 16h38
  2. Réponses: 3
    Dernier message: 11/12/2010, 14h18
  3. Réponses: 2
    Dernier message: 25/03/2009, 15h32
  4. Réponses: 13
    Dernier message: 19/11/2004, 18h11

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