Creation d'une macro excel convertir en pdf et demander l'envoie par mail avec l [Résolu]

- - Dernière réponse : jordane45
Messages postés
23555
Date d'inscription
mercredi 22 octobre 2003
Statut
Contributeur
Dernière intervention
10 décembre 2018
- 20 févr. 2013 à 23:18
Bonjour a tous,

J'ai parcouru et reparcouru le forum afin de trouver une solution a mon pseudo-probleme, je m'explique :

Je suis en train de modifier une feuille de pointage hebdomadaire de mon entreprise afin de faciliter l'utilisation de ce document et de ne plus oublier l'enregistrement et l'envoi de ce document.

Voici les macro que je possède :

// macro : envoi du classeur par mail

Sub EnvoiMail()
Workbooks("UnClasseur").SendMail Recipients:="xxx.yyy@maaa.com", _
Subject:="Test envoi classeur", _
ReturnReceipt:=True
End Sub

// macro nomme la feuille en fonction de la cellule "nom"

Sub NomFeuille()
With ActiveSheet 'agit sur la feuille active, à adapter
On Error Resume Next
.Name = .Range("O9") 'le nom de la feuille prend le nom inscrit cellule A1
If Err.Number <> 0 Then 'Test d'erreur, par exemple onglet existant déjà, ou caractère invalide
MsgBox ("Veuillez entrez un nom") ' messsage d'information en cas d'erreur
Exit Sub 'sortie de la macro en cas d'erreur
End If
End With
End Sub

// macro copie la feuille sans les données

Sub NouvelleFeuille
Sheets("MATRICE").Copy After:=Sheets(Sheets.Count)
End Sub

// macro converti le classeur au format PDF et l'enregistre sous :

ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\fichier.pdf", Quality:= _
        xlQualityStandard, IncludeDocProperties:=False, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False

Pour la convertion pdf, je voudrais que le dossier se créé en generant le nom a partir de 2 cellule (sites+section) et que le nom du classeur converti en pdf porte le nom de fichier en fonction de (site+semaine).

Biensure, je ne sais comment faire pour mettre toute ces macros sur un seul et même bouton...

Des idées, des innovations pour mon projet, je suis preneur, il faut savoir que les personnes qui remplissent ce pointages ne sont pas forcément a l'aise avec l'outil informatique, d'ou l'automatisation de cette trame.

Petite precision, concernant les feuille du classeur... tout est baser sur une matrice, je souhaite que celle ci soit cacher mais utiliser pour la duplication... je resume...

a l'ouverture du classeur, la feuille matrice doit être cachée, et une autre prête a être remplie, elle comportera un bouton nouveau pointage qui portera le nom de feuille "vierge" et se nommera qu'a la creation d'une prochaine feuille et ainsi de suite.. et un bouton qui gendre le classeur en pdf, l'enregistre dans un dossier défini ou le creer s'il existe pas.

Je vous remercie pour votre aide, je ne vous demande pas de me mâcher le travail, mais de m'aider a réaliser mon projet afin de mieux comprendre le concept des macro, pour, par la suite devenir autonome...

Encore merci,
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
3
Merci
Bonsoir jordane,

Serait il possible de déplacer mon sujet au bon endroit ?

J'ai d'autre question farfelu, et je voudrais qu'elle soit dans la bonne rubrique...

Par avance merci,

;)

Merci cco86260 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de cco86260
Messages postés
23555
Date d'inscription
mercredi 22 octobre 2003
Statut
Contributeur
Dernière intervention
10 décembre 2018
0
Merci
Bonjour tout seul ,

Pour commencer, quelques remarques :
1 - Lorsque l'on poste du code... on utilise les Balises de code ! (3 eme icone en partant de la droite dans la barre de menu)

2 - Votre question concerne du VB sous EXCEL.. donc du VBA ! Il existe une rubrique dans le forum spécialement pour ça.

3 - En général, on ne pose qu'UNE question par message.

Ensuite..

Biensure, je ne sais comment faire pour mettre toute ces macros sur un seul et même bouton...

Il suffit de les appeller les unes apres les autres
Private Sub CommandButton1_Click()
Call MaPremiereMacro
Call MaDeuxiemeMacro
'call ect..

End Sub



a l'ouverture du classeur, la feuille matrice doit être cachée....mais utilisée pour la duplication

Private Sub Workbook_Open()
    ' A l'ouverture du classeur on masque la Matrice
        Sheets("NomFeuilleMatrice").Visible = False
    'copie de la feuille Matrice
        Sheets("NomFeuilleMatrice").Select
        Sheets("NomFeuilleMatrice").Copy After:=Sheets(3)
    'On renome la nouvelle feuille
        ActiveSheet.Name = "NouveauNom"
End Sub


>> Donc voila... quelques exemples de ce qu'on peut faire.
A vous maintenant de chercher un peu et de revenir nous voir avec des questions bien précises et en respectant la charte du forum.

Cordialement,
Jordane
_____________________________________________________
Règles du forum à lire avant de poster une question : ICI
Commenter la réponse de jordane45
0
Merci
Bonjour Jordane,

Mes excuses pour ne pas avoir pris le temps de lire la charte et d'avoir posté au mauvais endroit... J'ai fais ça vite fait ce matin pendant les heures de travail...

En attendant, merci pour infos... elles vont m'être très utile..

A bientôt...

;-)
Commenter la réponse de cco86260
Messages postés
23555
Date d'inscription
mercredi 22 octobre 2003
Statut
Contributeur
Dernière intervention
10 décembre 2018
0
Merci
Pas de soucis.

par contre, pensez à mettre la question en "RESOLU" si cela répond à votre question.




Cordialement,
Jordane
_____________________________________________________
Règles du forum à lire avant de poster une question : ICI
Commenter la réponse de jordane45
Messages postés
23555
Date d'inscription
mercredi 22 octobre 2003
Statut
Contributeur
Dernière intervention
10 décembre 2018
0
Merci
pour ca faudrait qu'un modo passe par la.

mais de toutes facons, on ne doit generalement ne poser qu'une question par discussion.
le plus simple serait donc de poster directement de nouvelles questions dans le bon fofo

bonne soiree


Cordialement,
Jordane
_____________________________________________________
Règles du forum à lire avant de poster une question : [url=http://www.vbfrance.com/reglement.aspx]ICI[/ur
Commenter la réponse de jordane45
0
Merci
Re-bonsoir Jordane,

Est ce que c'est mieux ?

http://www.vbfrance.com/forum/sujet-COMMENT-CREER-USERFORM_1627714.aspx#1

Merci encore pour ton aide.... javascript:void(0);

Cordialemnt,

Christian
Commenter la réponse de cco86260
Messages postés
23555
Date d'inscription
mercredi 22 octobre 2003
Statut
Contributeur
Dernière intervention
10 décembre 2018
0
Merci
http://www.vbfrance.com/forum/sujet-COMMENT-CREER-USERFORM_1627714.aspx#1

Bon, cette fois la rubrique est la bonne

mais comme je te l'ai marqué dans ce nouveau sujet, il est largement préférable de poster chaque question séparément (même si cela concerne le même sujet).
Des questions trops longues et/ou mal exprimées ont très peu de chance d'avoir de réponse

Et imagine que tout le monde procède ainsi, il ne sera plus possible de faire de recherche dans le forum les questions étant disséminées au milieu d'un énorme blabla..
Toutes les personnes ne sachant pas répondre à toutes les questions, il ne leur sera plus possible en regardant les titres de se dire : << ah ben tiens.. sur ce sujet je peux l'aider...>>

par contre, pour éviter que ce sujet ne reste ouvert pour rien, je t'invite à la "clôturer" en le mettant en RESOLU.

Merci.

Cordialement,
Jordane
_____________________________________________________
Règles du forum à lire avant de poster une question : ICI
Commenter la réponse de jordane45

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.