Excel

Fermé
Loulyn - 6 janv. 2012 à 18:29
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 - 8 janv. 2012 à 23:15
Bonjour,

Comment peut-on faire pour envoyer par mail en pièce jointe une seule feuille d'un classeur excel ?
Tout le classeur je sais faire mais je n'ai pas trouvé pour une seule page.

Merci à ceux qui voudront bien m'éclairer.
Et tous mes meilleurs voeux.


A voir également:

13 réponses

Mike-31 Messages postés 18351 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 12 décembre 2024 5 110
Modifié par Mike-31 le 7/01/2012 à 14:27
Re,

Dans un premier temps teste le fichier joint, pour les explications on verra plus tard.

Le fichier joint envoi depuis la feuille2, par ex. la feuille1 directement en format PDF sans passer par une messagerie. Si problème il faudra activer la macro complémentaire Microsoft CDO for Exchange 2000 Library mais on verra à l'usage
Lorsque tu clic sur le bouton, la feuille 1 est copiée au format PDF dans le même répertoire que le fichier. Une fois expédiée la feuille est supprimée et un message averti que l'envoi à bien été opéré

https://www.cjoint.com/?BAhoBoWivJT
--
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
1
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
7 janv. 2012 à 15:02
Bonjour Mike-31,
Je profite de votre excellent exemple.
Merci.
Salutations.
Le Pingou
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
Modifié par Le Pingou le 7/01/2012 à 21:55
Bonsoir Mike-31,
J'ai essayé votre solution mais j'ai un message (Le serveur à rejeté une ou plusieur adresses de destinataires).
J'utilise La messagerie Windows Live Mail, est-ce que le problème vient de là ... !
Ou dois-je chercher pour corriger le problème ?
Merci.
Salutations.
Le Pingou
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
6 janv. 2012 à 22:12
Bonjour,
Tout simplement en copiant la feuille souhaitée dans un nouveau classeur qu'il vous suffira d'envoyer.
Pour copier la feuille : clic droit sur l'onglet de la feuille à envoyer et clic [Déplacer ou copier]
Sous [Dans le classeur :] choisir (nouveau classeur) et cocher la case [Créer une copie] puis sur OK.
0
Mike-31 Messages postés 18351 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 12 décembre 2024 5 110
6 janv. 2012 à 23:02
Salut le fil,

Ou en VBA si tu as quelques notions et en étant précis sur tes attentes Nom de la feuille à expédier ou de la plage et souhaites tu que l'envoie de cette feuille conserve le format Excel ou en PDF ce qui protégera les données.
L'envoi peut se faire via une messagerie comme Outlook ou directement en CDO plus rapide
0
J'avais bien pensé à la solution que me propose "Le Pingou" mais on ne sait pas si les personnes ont excel.
Merci pour ta solution en PDF, c'est exactement ce qu'il me fallait.
Par contre je ne sais pas ce qu'est le VBA, peux-tu m'expliquer ?
Merci
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
7 janv. 2012 à 10:23
Bonjour,
Merci.
Je pense que Mike-31 (amicales salutations) se fera un plaisir de vous l'expliquer.
Salutations.
Le Pingou
0
Mike-31 Messages postés 18351 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 12 décembre 2024 5 110
7 janv. 2012 à 22:20
Re,

Windows Live n'y est pour rien, ouvre mon fichier et en B3 saisi ton adresse mail de sorte à recevoir en retour le fichier et en C1 saisi SMTP.free.fr si ton fournisseur d'accès est free ou SMTP.orange.fr s'il s'agit d'orange etc...
si le code plante va dans le visual basic Outils/Références et coche
Microsoft CDO for Exchange 2000 Library
N'hésite pas à revenir si tu rencontre un problème
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
7 janv. 2012 à 23:13
Bonsoir Mike-31,
Merci.
Je n'ai pas cette référence [Microsoft CDO for Exchange 2000 Library] mais celle-ci [microsoft cdo for windows 2000 library], le problème vient-il de là ?
Je suis sous Windows 7 et MSO Pro Plus 2010.
0
Mike-31 Messages postés 18351 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 12 décembre 2024 5 110
7 janv. 2012 à 23:58
Re,

Excuse moi, oui c'est celle là microsoft cdo for windows 2000 library
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
8 janv. 2012 à 15:14
Bonjour Mike-31.
Merci, effectivement cela semble fonctionnée, mais le problème se trouve du côté du serveur car je reçois ce message :
Le serveur a rejeté une ou plusieurs adresses de destinataires. La réponse du serveur était : 55 5.7.1 relaying denied.
Mon fournisseur est [bluewin.ch].
Je vais chercher plus loin car cette méthode m'intéresse pour la connaissance...
0
Mike-31 Messages postés 18351 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 12 décembre 2024 5 110
Modifié par Mike-31 le 8/01/2012 à 15:28
Re,

Sur les bases de mon fichier, essaye de mettre en C1
smtpauths.bluewin.ch

si ça ne passe pas, dans le code tu verras cette ligne
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
remplace 25 par 465

à suivre !
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
8 janv. 2012 à 15:56
Bonjour Mike-31.
Merci.
Je pense que pour mon fournisseur le numéro du port du courrier sortant est le 587 et le nom du serveur est smtpauth.bluewin.ch (sans le « s » à smtpauths).
Il se trouve qu'il manque encore l'authentification car elle figure dans la configuration du fournisseur.
Je cherche... !
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
8 janv. 2012 à 17:41
Bonjour Mike-31,
J'ai trouvé, il faut encore le tester et je vous transmettrai le détail.
0
Mike-31 Messages postés 18351 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 12 décembre 2024 5 110
8 janv. 2012 à 18:00
Re,

Je ne sais pas si cela te sera utile

Serveur entrant: pop.bluewin.ch
Numéro de port: 110
Serveur sortant: smtpauth.bluewin.ch
Numéro de port: 587
ou
pop3s.bluewin.ch, port 995
smtpauths.bluewin.ch, port 465
ou
*Pop3 sécurisé: pop3s.bluewin.ch, port 995 SSL
*Imap sécurisé: imaps.bluewin.ch, port 993 SSL
*Smtp sécurisé: smtps.bluewin.ch, port 465 SSL

Bizarre que ce fournisseur d'accès ait autant de diversités, et je pense que c'est à ce niveau que ça bloque parce que j'utilise cette procédure depuis pas mal de temps et je l'ai proposé plusieurs fois sur les forums.
Je crois que j'ai laissé trainer une variable inutile dans le code que j'ai modifié pour cette discussion.
Lorsque le problème du port sortant sera résolu je t'enverrai le fichier initial
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
Modifié par Le Pingou le 8/01/2012 à 22:16
Bonjour Mike-31,
Merci pour vos informations.
Eh oui en Suisse c'est un peu différent, le fournisseur [Bluewin (Swisscom)] exige l'authentification par mesure de sécurité.
Il suffit d'ajouter les lignes d'instruction adéquate et c'est ton bon
Les lignes à insérer après [......../smtpserver"]:
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic      
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "Nom utilisateur messagerie"  
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "motdepasse"    
Voilà cela marche super bien.
Merci encore de votre aide et surtout de m'avoir fait découvrir cette solution avec [CDO].

Salutations.
Le Pingou
0
Mike-31 Messages postés 18351 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 12 décembre 2024 5 110
Modifié par Mike-31 le 8/01/2012 à 23:07
Salut,

Merci pour l'info, j'insère en attente ces lignes dans le code qui pourront être utiles pour ceux qui utilisent les réseaux sécurisés.

Pour info, tu termines la deuxième ligne par "Nom utilisateur messagerie"
c'est bizarre parce qu'avec le procédé CDO on sort directement sans passer par une messagerie, ce n'est pas le login ou le nom d'accès à internet dont tu veux parler!

de même pour le mot de passe, es ce le mot de passe de connexion ou de messagerie!

Enfin le principal est que tu sois arrivé à adapter le code que j'utilise et propose depuis des années, je le trouve plus de souple et rapidité d'utilisation parce qu'écrire un code pour une messagerie est souvent casse tête.
si tu veux des compléments de code pour envoyer une feuille ou classeur Excel en format XLS, XLSX ou PDF, pas de problème.

Avec ce procédé, j'ai écri un fichier Anniversaire qui automatiquement envoi un message personnalisé à la personne qui fête ces ans, et comme j'ai placé le fichier dans le menu démarrage je n'ai même pas besoin de l'ouvrir tout est automatique, je ne risque plus les oublies Microsoft veille pour moi.

Cordialement
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
Modifié par Le Pingou le 8/01/2012 à 23:28
Bonsoir Mike-31,
Si le fournisseur d'accès internet (pour moi : Bluewin.ch) exige l'authentification, le "Nom utilisateur messagerie" et le mot de passe de la messagerie sont obligatoires.
Tout autre tentative est voyez à l'échec.
Eh oui il y a des fournisseurs plus exigants que d'autres mais le service client va aussi avec.
Note: voir aussi ce lien : http://www.paulsadowski.com/wsh/cdo.htm
Salutations.
Le Pingou
0