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 :

[VBa-E] Object Ole "image bitmap" dans une Userform?


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut [VBa-E] Object Ole "image bitmap" dans une Userform?
    Salut à tous!!!

    Ma question porte sur l'objet Ole "Image Bitmap" pour le moment je l'insert dans une "Boîte de dialogue Microsoft Excel 5.0" mais l'inconvénient de cette boite de dial c'est qu'elle n'est pas paramétrable contrairement au bonne vielle UserForm !
    Donc je me suis demandé si il était possible d'inserer cet objet Ole dans une userform?
    et si Oui, Comment?

    Merci d'avance

    Gootsu

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut
    ahah je voix que j'ai posé une colle!!

    Qui sera capable de relever le défi!!! lol

  3. #3
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    Je travaille en aveugle (sans VBA), tu le sais.

    Mais je vois que tu n'as pas de réponse.

    Alors nous allons essayer.

    Quand tu as fait ton userform :
    Fais ce que tu fais d'habitude pour ajouter un composant..
    Tu as peut-être comme sous VB une fenêtre avec un onglet "insertable objects". Si oui Cliques dessus et insère l'objet de ton choix...
    Essaye.

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut
    je me suis demandé si il était possible d'inserer cet objet Ole dans une userform?
    enfait je pose cette question parce que justement il n'y a pas d'onglet "insertable objects" ou "insert objet OLE"!!

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Et si tu nous disais ce que tu veux faire ? Et où ? Si c'est insérer une image en la nommant dans un userform, tu dis, c'est peaucoup plus simple...

  6. #6
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut
    enfait je veux ouvrir "paint" en cliquan" sur l'image 'Bmp' ?

    je veux faire la meme chose qu'un objet "OLE Image Bitmap" dans Excel!
    - je clic sur l'objet
    - il m'ouvre paint
    - je modifi le dessin
    - je ferme paint
    - il prend en compte les modifications
    - il me les affiches dans l'objet
    mais je veux que ce soit dans une Userform!
    pour le moment c'est dans une "boîte de dialogue Microsoft Excel 5.0"!

    Merci

  7. #7
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Si tu as le nom de ton image, je ne peux que te proposer un "bricolage"
    Un clic sur ton image qui
    - Ouvre le fichier dans Paint par soft,
    Là tu modifies l'image, puis la Sauvegarde
    - Un nouveau clic sur l'image remplace l'image par l'image modifiée
    J'ai bien dit un "bricolage"
    Si on peut le faire par un objet OLE, je n'ai pas la solution re

  8. #8
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Si tu as le nom de ton image, je ne peux que te proposer un "bricolage"
    Un clic sur ton image qui
    - Ouvre le fichier dans Paint par soft,
    Là tu modifies l'image, puis la Sauvegarde
    - Un nouveau clic sur l'image remplace l'image par l'image modifiée
    J'ai bien dit un "bricolage"
    Si on peut le faire par un objet OLE, je n'ai pas la solution re
    Mets-nous le code que tu utilises dans ta "boîte de dialogue Microsoft Excel 5.0"

  9. #9
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    Désolé, tu sais que je n'ai pas le VBA moderne..

    Si tu comprends l'anglais, toutefois, tu peux peut-être lire très attentivement la totalité de ce que tu vas trouver ici :
    http://ureader.com/message/1414400.aspx

    et adapter.

  10. #10
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut
    J'utilise la "Boite de dial. Micro Excel 5.0" donc dans les onglets des feuilles d'Excel il apparaît cette "boite de dial." comme une feuille Excel.
    D'ailleur je ne veux pas qu'elle apparaisse pour éviter que l'utilisateur modifie ou supprime qqch. sur celle-ci.
    Donc le seul moyen que j'ai trouvé pour régler ce problème :
    1) je crée la "Boite de dialogue"
    à la fermeture
    2) je la détruit (au passage je précise qu'il me gère une erreur à la destruction de la boite de dialogue)!

    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
    48
    49
    Sub MicroExceldialog5()
    
        Application.ScreenUpdating = False
    'Ajout de la Boite de dialogue Microsoft Excel 5.0
        DialogSheets.Add.Name = "DialContrl"
    'Edition de la boite de dial 
    'Réglage de la taille de la boite
        ActiveSheet.Shapes("Dialog 1").Select
        Selection.ShapeRange.ScaleWidth 2.02, msoFalse, msoScaleFromTopLeft
        Selection.ShapeRange.ScaleHeight 2.21, msoFalse, msoScaleFromTopLeft
    'Mise en place des deux boutons à l'endroit voulut    
        ActiveSheet.Shapes.Range(Array("Button 2", "Button 3")).Select
        Selection.ShapeRange.IncrementLeft 252#
        Selection.ShapeRange.IncrementTop 252#
    'Création de l'objet OLE "Image Bitmap"
        ActiveSheet.OLEObjects.Add(Filename:="C:\Documents and Settings\Gootsu\ _
            Mes documents\Mes images\xxxxxxxx.bmp", Link:=False, _
            DisplayAsIcon:=False).Select
    'Réglage de la taille et de la position de l'Objet
        Selection.ShapeRange.IncrementLeft 95.25
        Selection.ShapeRange.IncrementTop 48.75
        Selection.ShapeRange.ScaleWidth 0.89, msoFalse, msoScaleFromTopLeft
        Selection.ShapeRange.ScaleHeight 0.89, msoFalse, msoScaleFromTopLeft
        Selection.ShapeRange.ScaleWidth 1.31, msoFalse, msoScaleFromTopLeft
    'Affectation d'une macro sur l'objet OLE pour ouvrir "paint"     
        ActiveSheet.Shapes("Object 4").Select
        Selection.OnAction = "MOpen"
    'Affectation d'une macro au bouton 2 et l'édition de son nom
        ActiveSheet.Shapes("Button 2").Select
        Selection.Characters.Text = "Quitter"
        Selection.OnAction = "DelDial"
    'Afficher la boite de dialogue
        DialogSheets(1).Show
    End Sub
    
    Sub MOpen()
    'Macro d'ouverture de "paint" pour l'objet OLE        
        ActiveSheet.Shapes("Object 4").Select
        Selection.Verb Verb:=xlOpen
    End Sub
    
    Sub DelDial()
    'Macro de fermeture de la boite de dialogue
    'Fermeture de la boite de Dial    
         DialogSheets(1).Hide
    'Destruction de la boie de dialogue
        Sheets("DialContrl").Select
        ActiveWindow.SelectedSheets.Delete
    End Sub

  11. #11
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    pour que la boite de dialogue n'apparaise pas dans les onglets excel.. voir menu format/Feuille/masquer

  12. #12
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu ne peux supprimer une feuille de calcul que s'il t'en reste une autre dans le classeur. Mais tu peux la masquer (cf - Réponse de bbil )

  13. #13
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut
    Merci
    J'ai pas pensé à passer par format/feuille/... car je pensais que la boite de dialogue apparaissé comme les feuilles excel dans l'éditeur vba!!
    Comme elle n'apparaissé pas et qu'elles n'ont pas de paramètre, je pensais que ce n'était pas possible avec les boite de dialogue excel

    merci encore!

    ps : quand je dis pas de paramètre je parle de la fenetre propriété il n'y as aucun paramètre!

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

Discussions similaires

  1. [XL-2013] Affichage d'une image .bmp impossible dans une userform (erreur d'éxécution 481)
    Par juliien dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/03/2015, 09h46
  2. [VBA-W et/ou E]Tirer un trait dans une userform
    Par Mut dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/12/2006, 08h14
  3. [VBA][OLE] insertion d'un graph dans une diapo Powerpoin
    Par Nexussmb dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/10/2005, 16h22
  4. [VBA-E]modifier les attributs d'un commentaire dans une cellule
    Par Olivier vb dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/03/2004, 10h26

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