XL 2010 [RESOLU] - Imprimer une ImageBox

Toubabou

XLDnaute Impliqué
J’aurais besoin de votre aide. Dans le fichier joint à l’ouverture cliquez sur

==> "RECETTES »

==> Saisissez « Desserts » en-dessous de « Plats » ‘’ComboBox1’’

==> Sélectionnez « Bûche de Noël crème de marrons chantilly », en-dessous de « RECETTES » ‘’ComboBox2’’

La recette s’affiche. Je voudrais par le biais des OptionBox « OptionBox 1, 2et3), changer l’image(Image3), pouvoir l’enregistrer dans ma recette pour une prochaine ouverture et enfin lorsque j’imprime ma recette par la contrôle « Imprimer », je voudrais retrouver mon image au-dessus des étoiles du niveau de difficulté.

Pourriez-vous m’aider ?

Merci par avance

Mon fichier:
https://transfernow.net/71555223jj1c

Toubabou
 

job75

XLDnaute Barbatruc
Bonjour Toubabou, Claudy,

Voyez le fichier joint, maintenant le bouton IMPRIMER de l'UserForm fonctionne bien.

J'ai repris un certain nombre de choses, mais il vous en reste encore pas mal à améliorer.

A+
 

Pièces jointes

  • TEST(1).zip
    1.7 MB · Affichages: 38

Toubabou

XLDnaute Impliqué
Excuse moi Job75,
Je viens de m'apercevoir que si aucune sélection n'est faite par les "OptionButon" cela renvois une erreur du style:
Debogage:


Code:
Private Sub InsImage(Image$, Cel As Range, ordre As Byte)
  Static y 'mémorise
  Cel.Activate
  Cel = Image
  With Sheets("IMPRESSION").Pictures.Insert(Image)
  '.Name = Image
    .ShapeRange.LockAspectRatio = msoTrue
    If ordre = 1 Then
      .Height = Cel.Height * 0.9
      If .Width > Cel.Width * 0.9 Then .Width = Cel.Width * 0.9
      .Top = Cel.Top + ((Cel.Height - .Height) / 2)
      .Left = Cel.Left + ((Cel.Width - .Width) / 2)
      y = .Top
    ElseIf ordre = 3 Then
      .Top = y
      .Height = 100
    Else
      .Top = y + 120
    End If
  End With
End Sub
 

job75

XLDnaute Barbatruc
Bonjour Toubabou,
Par contre, pourrais-tu me dire quels sont les modifications que tu as apportées?
J'ai modifié les macros :

- des 3 OptionButtons avec Image3.Tag

- CommandButton5_Click() avec les 3 Call InsImage

- InsImage.

J'ai aussi ajouté OptionButton1 = True dans CheckBox1_Click pour qu'au moins un bouton soit activé.

Si l'on supprime CheckBox1 il faudra mettre cette instruction ailleurs, par exemple dans UserForm_Initialize.

A+
 

job75

XLDnaute Barbatruc
Re,

Il y a bien mieux : j'ai mis dans CommandButton5_Click, avant le 3ème Call :
Code:
  If Image3.Tag = "" Then OptionButton1 = True 'lance OptionButton1_Click
Fichier (3).

A+
 

Pièces jointes

  • TEST(3).zip
    1.7 MB · Affichages: 38

Statistiques des forums

Discussions
312 104
Messages
2 085 330
Membres
102 862
dernier inscrit
Emma35400