Utiliser projet Excel sous MAC
Je voudrai le cas échéant pouvoir ajouter une catégorie comme par exemple "GLACES" qui n'existe par dans la liste "TYPE DE GLACE" sans être obligée de démasquer les onglets et de rajouter manuellement dans la Feuil "LISTE".
A l'origine il me suffisait de rajouter dans la ComboBox3 le nouveau type et c'était automatiquement rajouté dans la liste déroulante de la ComboBox1
Voilà le code que j'ai:
ComboBox3.Clear
ComboBox3.List = Feuil2.Range("A2:A" & Feuil2.Range("A" & Rows.Count).End(xlUp).Row).Value
With Me.Textbox2
For J = 2 To Ws.Range("D" & Rows.Count).End(xlUp).Row
.AddItem Ws.Range("d" & J)
Next J
End WithA l'origine il me suffisait de rajouter dans la ComboBox3 le nouveau type et c'était automatiquement rajouté dans la liste déroulante de la ComboBox1
Ce n'est pas ce que je vois dans le premier fichier que vous m'avez envoyé et dans le code que vous me donnez
- feuil2 c'est la feuille Liste
- Ws correspond à la feuil1 (feuille Recettes)
- textbox2 c'est le niveau de difficulté
Dans ce fichier la combo3 reprend la liste de la colonne A en feuille Listes et la combo1 reprend la liste de la colonne A en feuille recettes. Il n'y a donc aucune liaison entre les deux.
Ce que je vois c'est que la combo3 ne sert pas, si ce n'est à vous montrez la liste de la colonne A en feuille recettes.
Par contre si vous ajoutez Glaces dans la combo1 et vous cliquez sur nouvelle recette, cela ajoute cette recette en feuille recettes et le mot Glace en feuille Liste
Faites un test sur le dernier fichier que je vous ai envoyé
Bonjour Dan,
Je viens de faire un test avec la ComboBox1, effectivement cela fonctionne, je n'avais pas fais attention, je vous prie de m'en excuser
Je peux donc sans soucie supprimer la ComboBox3? Cela allègera le fichier pour le passage sous MAC je suppose
Bonne journée
Bonjour,
Je viens de faire un test avec la ComboBox1, effectivement cela fonctionne, je n'avais pas fais attention, je vous prie de m'en excuser
Pas de soucis.
Je peux donc sans soucie supprimer la ComboBox3? Cela allègera le fichier pour le passage sous MAC je suppose
bah à vrai dire je me suis toujours demandé le pourquoi de cette combo3 et de la colonne A dans la feuille Liste.
Mais si vous supprimez cette combo3, vous n'aurez plus la liste des types de plats que l'on trouve en colonne A dans la feuille Liste.
La combo2 reprenant les infos de la colonne A de la feuille Recettes.
Pour ce qui d'alléger le passage sous MAC, cela n'aura aucun impact.
Edit : tant qu'à faire, il y a une chose qui est anormale. Si vous ouvrez votre USerform1 et que vous cliquez sur le bouton Ouvrir Recettes, cela affiche l'onglet Recettes et décharge l'userform. Du coup vu que vous êtes en plein écran et que vos onglets sont masqués vous ne savez plus revenir vers l'USF ou la feuille menu
Seule solution appuyer sur la touche ESC et quitter via le menu fichier...
tant qu'à faire, il y a une chose qui est anormale. Si vous ouvrez votre USerform1 et que vous cliquez sur le bouton Ouvrir Recettes, cela affiche l'onglet Recettes et décharge l'userform. Du coup vu que vous êtes en plein écran et que vos onglets sont masqués vous ne savez plus revenir vers l'USF ou la feuille menu
Seule solution appuyer sur la touche ESC et quitter via le menu fichier...
J'utilise le CommandButon1 pour utiliser l'UserForm1
Bonjour
J'utilise le CommandButon1 pour utiliser l'UserForm1
Heu dans l'USF c'est le bouton Quitter cela...
Je parlais du bouton Command 6
Oui effectivement, je n'avais pas compris. Je ne sais plus à quoi servait se bouton. Je pense que l'on peux le supprimer
Bonjour
Je ne sais plus à quoi servait se bouton. Je pense que l'on peux le supprimer
Le bouton sert à vous afficher la feuille Recettes. Même genre de fonction que le bouton Courses
Seule chose si vous le gardez ce serait de mettre un bouton "Menu" qui vous ramène sur la feuille Menu comme vous l'avez fait dans la feuille Courses
Crdlt
Bonjour Dan,
C'est ce que je vais faire. Merci beaucoup.
Comment ce passe la transition vers MAC?
Amicalement,
Comment ce passe la transition vers MAC?
Bah là j'attendais votre retour comme vous m'aviez dit ici --> https://forum.excel-pratique.com/s/goto/1249831
Il faut tester votre fichier pour avancer pas à pas et savoir quelle version vous avez sur ce MAC
Crdlt
Bonsoir Dan,
Voilà je viens de faire un essai sur le MAC de ma fille qui devrait bientôt être le mien.
Le fichier s’ouvre sur la page d’accueil, mais celle-ci ne s’affiche pas en plein écran.
USERFORM1:
- sélection "TYPE DE RECETTE" (erreur 1004)
- "LISTE DE COURSE" fausse. Les informations font partie d'une autre recette (recette créé nouvellement).
- "IMPRIMER" la feuille d'impression s'affiche, mais pas les images. Surement en corrélation avec l'erreur 1004 du dessus.
- "NOUVELLE RECETTE" , ok
- "SUPPRIMER", ok*
- "MODIFIER", ok
Question:
Comment octroyer automatiquement l'accès au fichier pour toutes les photos?
Les informations du MAC sont :
Voilà ce que j'ai pu constater. Encore merci à vous
Bonjour
Merci pour les infos.
Hum... beaucoup ont une version 2016 et de ce que j'ai pu souvent lire, ce n'est pas une très bonne version pour VBA. Mais bon on va essayer
C'est déjà bien que les USF s'affchent...
- sélection "TYPE DE RECETTE" (erreur 1004)
A tester mais dans le code Private Sub ComboBox2_Change(), entre les MyImage = ComboBox2 & ".jpg" et MyImage = ComboBox4 & ".jpg" modifiez la condition IF
If existeFichier(MyImage, chemin) Then
'Image1.Tag = chemin & MyImage
#If Mac Then
Me.Image1.Pictures.Insert (chemin & MyImage) 'pour mac
'Me.Controls.Item("Image1").Picture = chemin & MyImage 'A tester si souci sur ligne precedente
#Else
Me.Image1.Picture = LoadPicture(chemin & MyImage)
#End If
Else
#If Mac Then
Me.Image1.Pictures.Insert (chemin & "INEXISTANTE.jpg") 'pour mac
'Me.Controls.Item("Image1").Picture = (chemin & "INEXISTANTE.jpg") 'A tester si souci sur ligne precedente
#Else
Me.Image1.Picture = LoadPicture(chemin & "INEXISTANTE.jpg")
#End If
End IfNB :
- j'ai ajouté une ligne avec mention "A tester.... A voir si la ligne précédente renvoie une erreur ce qui est le cas sur ma version
- A vérifier aussi dans les propriétés de l'objet Image1, si manuellement vous arrivez à mettre une image JPG. Si ce n'est pas le cas, essayez avec une image BMP
- "LISTE DE COURSE" fausse. Les informations font partie d'une autre recette (recette créé nouvellement)
Le bouton sur l'userform ne fait que d'aller sur la feuille Courses. Si vous choisissez une recette existante (par exemple Allison Dessert puis Rose cake...) la liste de course ne change pas. Dans le fichier j'arrive toujours sur "Croustilles...)
Comment octroyer automatiquement l'accès au fichier pour toutes les photos?
Si je comprends bien la question et que je regarde le code les images doivent être dans un dossier appelé "Images" et surtout ce dossier doit se trouver dans le même répertoire que le fichier excel
Il se peut que cela ne résolve pas le souci mais si vous regardez sous windows, vous devriez au moins avoir la même structure ou alors il faudra adapter
Rem : pensez à ajouter l'outil développeur dans le menu
Le bouton sur l'userform ne fait que d'aller sur la feuille Courses. Si vous choisissez une recette existante (par exemple Allison Dessert puis Rose cake...) la liste de course ne change pas. Dans le fichier j'arrive toujours sur "Croustilles...)
Effectivement, je viens de m'apercevoir que cela ne fonctionne plus depuis un petit moment. Il faut que je retrouve le code qui me permettait d'inscrire les ingrédient de la recette affichée dans l'UserForm1
Si je comprends bien la question et que je regarde le code les images doivent être dans un dossier appelé "Images" et surtout ce dossier doit se trouver dans le même répertoire que le fichier excel
Il se peut que cela ne résolve pas le souci mais si vous regardez sous windows, vous devriez au moins avoir la même structure ou alors il faudra adapter
Le fichier est bien dans le bon dossier et fonctionne parfaitement sous Windows.
A tester mais dans le code Private Sub ComboBox2_Change(), entre les MyImage = ComboBox2 & ".jpg" et MyImage = ComboBox4 & ".jpg" modifiez la condition IF
Sous windows, après avoir modifier le code plus d'image dans la feuille impression.
Rem : pensez à ajouter l'outil développeur dans le menu
Je n'ai pas compris
- "LISTE DE COURSE" fausse. Les informations font partie d'une autre recette (recette créé nouvellement)
Le bouton sur l'userform ne fait que d'aller sur la feuille Courses. Si vous choisissez une recette existante (par exemple Allison Dessert puis Rose cake...) la liste de course ne change pas. Dans le fichier j'arrive toujours sur "Croustilles...)
Effectivement, je viens de remonter dans mes sauvegarde du fichier(depuis 2017), ce bouton n'a jamais été codé. Je l'avais oublié. Pour imprimer une liste de course, je passe par "IMPRIMER" et là j'ai un bouton liste de course qui fonctionne.
Il faudra que j'y pense plus tard
Courses : Effectivement, je viens de m'apercevoir que cela ne fonctionne plus depuis un petit moment. Il faut que je retrouve le code qui me permettait d'inscrire les ingrédient de la recette affichée dans l'UserForm1
En fait non, c'est moi qui n'avait pas vu que la feuille Recettes contenait des formules qui pointent sur la feuille Impression et donc sur le bouton Imprimer avant
Donc je dirais que ce n''est pas logique d'avoir le bouton Liste de courses actif si vous n'avez pas cliqué sur le bouton Imprimer avant
Il suffirait de le rendre actif si vous avez cliqué sur Imprimer dans l'USF
Images : Le fichier est bien dans le bon dossier et fonctionne parfaitement sous Windows.
Sous windows, après avoir modifier le code plus d'image dans la feuille impression.
Vous avez fait le test avec la modification que je vous ai donnée ?
Sous windows cela fonctionne très bien chez moi
Pour l'outil développeur c'est dans le menu excel et là dans votre vue je ne le vois pas. je vois Automatisation. c'est peut-être cela qui accède à l'éditeur VBA ?
Sous windows cela donne ceci
Vous devriez avoir la même chose sous MAC non ?
Vous avez fait le test avec la modification que je vous ai donnée ?
Sous windows cela fonctionne très bien chez moi
chez moi, sous Windows, un message d'erreur:
Pour l'outil développeur c'est dans le menu excel et là dans votre vue je ne le vois pas. je vois Automatisation. c'est peut-être cela qui accède à l'éditeur VBA ?
Sous windows cela donne ceci
Vous devriez avoir la même chose sous MAC non ?
Oui oui "DEVELOPPEUR" est bien dans le ruban MAC
Je n'ai pas testé le bouton Imprimer et les modifications que je vous ai données ne concernent que la vue dans l'USF et pas le bouton Imprimer
ce point est à analyser
Je viens de transférer le dossier à ma fille après y avoir apporté vos modification pour quelle fasse un essai car je ne peu pas me déplacer.
Hum...là je ne sais pas dire sans voir où le code s'arrête.
Hier soir vous m'avez écrit que cela fonctionnait .... pour l'ouverture --> https://forum.excel-pratique.com/s/goto/1252681
De plus à la vue montrée vous n'utilisez par la version V4 que j'ai postée car les lignes vertes ne sont pas présentes
Pour les modifications au sujet de l'impression, j'ai compris. On va plutôt revenir en arrière et faire comme ceci
Allez dans l'USF1 et re-modifiez dans le code Private Sub ComboBox2_Change() entre les lignes MyImage = ComboBox2 & ".jpg" et End sub, remplacez les lignes par ceci
If existeFichier(MyImage, chemin) Then
Image1.Tag = chemin & MyImage
#If Mac Then
Me.Image1.Pictures.Insert (Image1.Tag) 'pour mac
'Me.Controls.Item("Image1").Picture = Image1.Tag
#Else
Me.Image1.Picture = LoadPicture(chemin & MyImage)
#End If
Else
#If Mac Then
Me.Image1.Pictures.Insert (chemin & "INEXISTANTE.jpg") 'pour mac
'Me.Controls.Item("Image1").Picture = chemin & "INEXISTANTE.jpg"
#Else
Me.Image1.Picture = LoadPicture(chemin & "INEXISTANTE.jpg")
#End If
End If
MyImage = Combobox4 & ".jpg"
If existeFichier(MyImage, chemin) Then
Image2.Tag = chemin & MyImage
#If Mac Then
Me.Image2.Pictures.Insert (Image2.Tag) 'pour mac
'Me.Controls.Item("Image1").Picture = Image2.Tag
#Else
Me.Image2.Picture = LoadPicture(Image2.Tag)
#End If
Else
#If Mac Then
Me.Image2.Pictures.Insert (chemin & "INEXISTANTE2.jpg") 'pour mac
'Me.Controls.Item("Image2").Picture = chemin & "INEXISTANTE2.jpg"
#Else
Me.Image2.Picture = LoadPicture(chemin & "INEXISTANTE2.jpg")
#End If
End If
Fin:Cela devrait fonctionner sous windows. Conditions la combo2 et combo4 doivent être complétées
A noter que je n'ai pas compris le pourquoi de l'image2 avec la combo4. Je suppose qu'il y a une photo en fonction du niveau de difficulté ?
A voir si la façon de faire va fonctionner avec Mac.
Normalement j'utilise bien la version 4 mais j'ai renommé celui-ci pour le transférer à ma fille.
Dans le doute pourriez vous me renvoyer le fichier qui fonctionne chez vous sous mac.
Merci



