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 :

Besoin d'aide macros


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2013
    Messages : 33
    Par défaut Besoin d'aide macros
    Bonjour,
    Tout d'abord voila ma config : Windows 7 et excel 2007

    Je suis actuellement en stage dans une enseigne de grande distribution, stage pour lequel je me suis vu attribué un projet particulier.
    L'idée est de mettre en place un outil de commande tactile dans les rayons, pour que les clients intéressés puissent passer commande 48h à l'avance pour tel produit en tel quantité à telle date.

    Etant étudiant en commerce et pas expert en informatique (bien que j'aime ça), mes compétences deviennent limites là, donc j'ai besoin d'aide.
    Je fais donc avec mes modestes moyens, qui sont les suivants :

    - J'ai réalisé un book sur powerpoint, avec tous les produits de chaque rayon et un visuel attractif. J'ai bourré le powerpoint de liens hypertextes pour que le client puisse naviguer sans problème, quelque chose d'intuitif et d'agréable à partoucir.

    Ensuite, pour finaliser la commande, j'ai créer un lien vers un bon de commande réalisé sous excel. Déjà première difficulté c'est que le clavier n'apparaissait pas sous excel sur l'écran tactile, j'ai donc du créer un bouton et une macro permettant d'afficher le clavier virtuel de windows. Hélas je n'arrive pas à faire plus

    En gros ce que je voudrais, outre raconter ma vie :
    - Quand le client clique sur "Valider ma commande" sur le fichier excel :
    - Que le fameux bon de commande préalablement rempli sur l'écran par le client, parte à l'impression vers l'imprimante à proximité.
    - Que le bon de commande rempli soit expédié par mail au chef de rayon afin de garder une trace supplémentaire.
    - - Que le bon de commande, une fois la commande terminée, se réinitialise (que les quantités disparaissent, et que les cases "noms", "prénoms", "adresse" et compagnie se remettent à zéro. Sinon quand le second client va passer commande il verra le nom du précédent et devra effacer etc.

    D'après vous, est-ce que c'est possible, et si oui comment ? J'ai passé beaucoup de temps sur un pc, donc je suis capable de comprendre, mais en revanche en programmation je suis une vraie bille, je ne sais quasiment rien faire (le bouton macro pour le clavier virtuel était déjà une victoire pour moi ...). Est-ce que l'enregistrement de macro peut ici m'aider ? Je veux dire, est-ce que je peux enregistrer la procédure d'envoi du mail, d'impression, et de réinitialisation manuellement pour que ça soit retranscrit tout seul en code ?

    j'en appelle donc à votre aide car là je bloque.

    Je suis disponible si des infos complémentaires sont nécessaires, et suis disposé à transmettre mon adresse mail si quelqu'un a le coeur vaillant pour tenter de m'aider en direct.
    Dans l'espoir de trouver une solution,
    Merci

    Matthieu

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    D'abord, créer le bouton. Onglet "Développeur", Insérer, ici, choisis un bouton de commande dans la partie ActiveX. En maintenant le bouton de la souris enfoncé, dessine le bouton. Fais un clic droit dessus et clique sur "Format de contrôle". Dans l'onglet "Propriétés", dé-sélecte la case "Imprimer l'objet". Clique sur "OK". Fais un clic droit sur le bouton et clique sur "Propriétés". Remplace le texte de la propriété "Caption" pour mettre le texte de ton choix. Ferme la fenêtre des propriétés et clique sur "Mode Création" dans le ruban. Clique sur "Visualiser le code (dans le ruban). Dans la fenêtre qui s'ouvre, colle la macro suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub CommandButton1_Click()
        ActiveSheet.PrintOut
        ThisWorkbook.SendMail "adresse@toto.com", "ici, mettre le sujet du message"
        'Effacement des plages de cellules. Dépend de la structure de ton bon de commande
        'par exemple :
        'Effacement de l'adresse (A1:A8) :
        [A1:A8].ClearContents
        'etc
    End Sub
    Il faut que tu remplaces "adresse@toto.com" par l'adresse mail du chef de rayon et "ici, mettre le sujet du message" par ce que tu veux qu'il apparaisse dans le titre du message. Pour l'effacement, je t'ai mis un exemple :
    Tu dois mettre autant de lignes que nécessaire pour un effacement total.
    Si tu as des questions, n'hésite pas.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2013
    Messages : 33
    Par défaut
    Bonjour !
    J'ai suivi pas à pas les étapes que tu m'as présenté.
    D'après ce que je vois, ce bouton est censé générer l'envoi d'un mail à l'adresse voulue, générer une impression, et effacer le contenu des cellules que j'aurais défini.

    J'ai donc créé le bouton de commande ActiveX comme tu me l'as dis, et y ai collé le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub CommandButton1_Click()
        ActiveSheet.PrintOut
        ThisWorkbook.SendMail "monadresse@", "Votre commande "
        [B8:B12].ClearContents
        [C8:C12].ClearContents
     
    End Sub

    Cependant lorsque je clique sur le bouton, j'ai une impression qui se fait via OneNote (comme je ne suis pas relié à une imprimante présentement ), et Windows Live Mail qui se lance. Et de plus, les cellules ne s'effacent pas.

    Donc je voulais savoir, est-ce que je suis forcé de passer par windows live mail pour l'envoi du bon de commande ? Car je ne l'utilise pas, et la boite dans laquelle je suis non plus. Et est-ce que si je me relie à une imprimante, elle prendra le pas sur OneNote ?

    En tous cas je te remercie de ton aide, car je patauge bien comme il faut...!

    PS : dans le cas où pour l'impression, et même le mail, je voudrais expédier seulement la page 1 et non les 2, est-ce que c'est compliqué en termes de codes ?

    EDIT : il me met un message d'erreur aussi "Erreur d'exécution 1004"
    "La méthode 'SendMail'de l'objet '_Workbook' a échoué"

    Merci encore

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Pourquoi as-tu demandé une impression puisque tu n'as pas d'imprimante ???

    Et est-ce que si je me relie à une imprimante, elle prendra le pas sur OneNote ?
    Oui.

    La commande "SendMail" utilise le logiciel de messagerie par défaut. Quel logiciel utilises-tu ?

    dans le cas où pour l'impression, et même le mail, je voudrais expédier seulement la page 1 et non les 2, est-ce que c'est compliqué en termes de codes ?
    C'est plus compliqué pour le mail mais très faisable quand même.

    il me met un message d'erreur aussi "Erreur d'exécution 1004"
    Possible si WindowsLiveMail n'est pas ou mal configuré.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2013
    Messages : 33
    Par défaut
    Re-bonjour

    Le projet que je met en place ne sera pas exécuté via mon PC personnel, celui sur lequel je travaille.
    L'objectif est que tout se fasse à partir de l'écran multimédia du magasin, qui sera relié en wifi à une imprimante. C'est pourquoi j'avais besoin de ça pour effectuer un test.

    C'est donc normal qu'il s'ouvre sur OneNote sur mon PC perso.

    Pour ce qui est du logiciel de messagerie par défaut, je n'en utilise pas, je passe par hotmail ou gmail.
    Tu veux dire qu'ici, l'envoi de mail va forcément passer via un logiciel type windows live mail ou Outlook ? Il faut que je regarde quel est le logiciel disponible sur l'écran multimédia dans ce cas.

    Et pour les pages (à savoir n'imprimer que la 1 et non les 2) c'est essentiellement pour l'impression et non pour l'envoi du mail que cela me serait grandement utile !

    Enfin, est-ce normal que mes cases ne se soient pas réinitialisées ? (je suppose que oui, puisque l'erreur a eu lieu avant le code relatif à l'effacement, mais sait-on jamais)

    Merci encore !

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Et pour les pages (à savoir n'imprimer que la 1 et non les 2) c'est essentiellement pour l'impression et non pour l'envoi du mail que cela me serait grandement utile !
    Est-ce la première page ou la première feuille que tu veux imprimer ? J'ai comme un doute.
    Tu veux dire qu'ici, l'envoi de mail va forcément passer via un logiciel type windows live mail ou Outlook ? Il faut que je regarde quel est le logiciel disponible sur l'écran multimédia dans ce cas.
    Oui, j'ai besoin de savoir comment sont traités les messages.

Discussions similaires

  1. Besoin d'aide macro
    Par redgy844 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/10/2013, 18h13
  2. Besoin d'aide macro excel
    Par Nyrade dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/05/2013, 06h25
  3. [AC-2010] Besoin d'aide macro VBA access
    Par porruak dans le forum VBA Access
    Réponses: 3
    Dernier message: 26/03/2012, 15h50
  4. Besoin d'aide Macro récupéré les mêmes données sur classeur fermé
    Par djinero dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 04/10/2011, 15h40
  5. Besoin d'aide macro
    Par adrien1001 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/05/2008, 01h34

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