Macro d'enregistrement d'une feuille de calcul
Résolu
p.girard
Messages postés
48
Date d'inscription
Statut
Membre
Dernière intervention
-
p.girard Messages postés 48 Date d'inscription Statut Membre Dernière intervention -
p.girard Messages postés 48 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'essaye d'automatiser l'enregistrement de certain fichier mais ma macro ne fonctionne pas !
J'utilise excel 2010.
Je souhaite enregistrer en pdf la feuille 2 de calcul de mon fichier Mais je chercher aussi à automatiser le nom des fichiers d'enregistrement.
Mon problème est que la cellule "ActiveCell" que je souhaite avoir est positionnée sur la feuille 1 du classeur.
Voilà le code :
Lorsque je lance ma macro cela ne fonctionne pas.
Des idées ?
En vous remerciant,
PG
J'essaye d'automatiser l'enregistrement de certain fichier mais ma macro ne fonctionne pas !
J'utilise excel 2010.
Je souhaite enregistrer en pdf la feuille 2 de calcul de mon fichier Mais je chercher aussi à automatiser le nom des fichiers d'enregistrement.
Mon problème est que la cellule "ActiveCell" que je souhaite avoir est positionnée sur la feuille 1 du classeur.
Voilà le code :
Sub Export_PDF() Dim fichier As String With Worksheets("Feuil2") fichier = Format(Now, "yyyy-mm-dd") & " " & "Fichierauto" & " " & .Range(" ActiveCell.Value") & ".pdf" Chemin = rep & "\\dossierblabla\" & fichier .ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin, Quality:=xlQualityStandard, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False End With End Sub
Lorsque je lance ma macro cela ne fonctionne pas.
Des idées ?
En vous remerciant,
PG
A voir également:
- Macro d'enregistrement d'une feuille de calcul
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Bruler feuille de laurier - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Calcul moyenne excel - Guide
- Comment supprimer une feuille sur word - Guide
5 réponses
Bonjour,
Plusieurs choses ne vont pas.
1- dans un bloc With, si tu mets un point devant un objet, celui-ci se rapporte à l'objet référencé dans le bloc With.
Ainsi :
Fait référence à la cellule A1 de la feuille Feuil2
Si tu veux faire référence à la cellule A1 de la feuille Feuil1, tout en étant dans un bloc With Sheets("Feuil2"), il faut le préciser dans le code.
Le code suivant dit que la cellule A1 de la feuille Feuil1 doit être égal à la cellule A3 de la feuille Feuil2 :
2- Range("ActiveCell.Value") fait référence à un Range que tu aurais préalablement nommé "ActiveCell.Value" ...
Je ferais comme ceci à ta place :
sous réserve d'autres erreurs bien entendu
Plusieurs choses ne vont pas.
1- dans un bloc With, si tu mets un point devant un objet, celui-ci se rapporte à l'objet référencé dans le bloc With.
Ainsi :
With Sheets("Feuil2") .Range("A1") End With
Fait référence à la cellule A1 de la feuille Feuil2
Si tu veux faire référence à la cellule A1 de la feuille Feuil1, tout en étant dans un bloc With Sheets("Feuil2"), il faut le préciser dans le code.
Le code suivant dit que la cellule A1 de la feuille Feuil1 doit être égal à la cellule A3 de la feuille Feuil2 :
With Sheets("Feuil2") Sheets("Feuil1").Range("A1") = .Range("A3") End With
2- Range("ActiveCell.Value") fait référence à un Range que tu aurais préalablement nommé "ActiveCell.Value" ...
Je ferais comme ceci à ta place :
Sub Export_PDF() Dim fichier As String, NomAuto As String NomAuto = ActiveCell.Value 'ou Sheets("Feuil1").Range("A18") par exemple With Worksheets("Feuil2") fichier = Format(Now, "yyyy-mm-dd") & " " & "Fichierauto" & " " & NomAuto & ".pdf" Chemin = rep & "\\dossierblabla\" & fichier .ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin, Quality:=xlQualityStandard, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False End With End Sub
sous réserve d'autres erreurs bien entendu
Bonjour,
Ton nouveau fichier PDF est il enregistré dans le même répertoire que le fichier souche
et si je comprends bien, le nom du nouveau fichier est la valeur de la cellule active Feuil1
c'est bien cela
Ton nouveau fichier PDF est il enregistré dans le même répertoire que le fichier souche
et si je comprends bien, le nom du nouveau fichier est la valeur de la cellule active Feuil1
c'est bien cela
Vous pouvez déjà enlevé les guillmets de l'active celle
Et quelle est la valeur de la ceullule active ?
*Pensez mettre vos messages en [Résolu] et cliquer sur le + des conseil qui vous ont été utils"
.Range(ActiveCell.Value)// et pas
.Range(" ActiveCell.Value")
Et quelle est la valeur de la ceullule active ?
*Pensez mettre vos messages en [Résolu] et cliquer sur le + des conseil qui vous ont été utils"
Re,
en l'absence de réponse, en supposant que le nouveau fichier s"enregistre dans le même réperetoire
Sub Dupliquer_FormatPDF()
Dim chemin, nom As String
Application.DisplayAlerts = False '-------Annulation des alertes
chemin = ActiveWorkbook.Path
nom = Format(Now, "yyyy-mm-dd ") & ActiveCell.Value & ".PDF" 'nom du nouveau classeur dans cellule et définir extension si différente d'application
'---------------------Nom du fichier à envoyer extension PDF
Sheets("Feuil2").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "\" & nom, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
'---------------------------------------Appel procédure d'envoi
Application.DisplayAlerts = True '-------rétablissement des alertes
End Sub
en l'absence de réponse, en supposant que le nouveau fichier s"enregistre dans le même réperetoire
Sub Dupliquer_FormatPDF()
Dim chemin, nom As String
Application.DisplayAlerts = False '-------Annulation des alertes
chemin = ActiveWorkbook.Path
nom = Format(Now, "yyyy-mm-dd ") & ActiveCell.Value & ".PDF" 'nom du nouveau classeur dans cellule et définir extension si différente d'application
'---------------------Nom du fichier à envoyer extension PDF
Sheets("Feuil2").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "\" & nom, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
'---------------------------------------Appel procédure d'envoi
Application.DisplayAlerts = True '-------rétablissement des alertes
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut à vous deux les gars ! Merci de la réponse très rapide!
Franck merci pour ta réponse très pédagogique (et oui je débute^^)
Tu as bien en effet réglé mon problème et je comprends mieux la façon dont Excel procède grâce à toi \o/
Le problème venait bien du fait qu'il fallait faire référence à la feuil1 tout en étant dans le With sheet (feuill2) ^^
Tout fonctionne à merveille maintenant donc merci bien :)
Je vais avoir de beau PDF maintenant :D
Encore merci !
PG
PS : Mike, le chemin du fichier était bidon c'était juste pour l'exemple.
Franck merci pour ta réponse très pédagogique (et oui je débute^^)
Tu as bien en effet réglé mon problème et je comprends mieux la façon dont Excel procède grâce à toi \o/
Le problème venait bien du fait qu'il fallait faire référence à la feuil1 tout en étant dans le With sheet (feuill2) ^^
Tout fonctionne à merveille maintenant donc merci bien :)
Je vais avoir de beau PDF maintenant :D
Encore merci !
PG
PS : Mike, le chemin du fichier était bidon c'était juste pour l'exemple.