Bonjour,
J’ai un petit souci concernant une macro que j’essaie de réaliser.
Cette macro me permet de convertir une page excel en fichier pdf (la zone à éditer est définie par l’utilisateur).
Cette macro fonctionne lorsque la destination du fichier pdf est fixe (cf version OK ci-dessous)
Sub editpdf()
'
' pdf Macro
'
'
ActiveWindow.DisplayZeros = True
LigFin = [A:A].Find("fin", SearchOrder:=xlByRows, SearchDirection:=xlNext, LookAt:=xlWhole, LookIn:=xlValues).Row
ColFin = [2:2].Find("0", SearchOrder:=xlByColumns, SearchDirection:=xlNext, LookAt:=xlWhole, LookIn:=xlValues).Column
If Err = 0 Then
ActiveSheet.PageSetup.PrintArea = Range("B2", Cells(LigFin - 1, ColFin - 1)).Address
Else
ActiveSheet.PageSetup.PrintArea = [A1].CurrentRegion.Address
End If
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
" C:\Documents\stagiaire\stagiaire1\2011\aptitude\compterendu.pdf ", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub
En revanche lorsque j’essaie de rendre variable la destination du fichier grâce à des valeurs saisies sur des onglets elle ne marche pas (cf version avec beug ci-dessous)
Sub editpdf()
'
' pdf Macro
'
'
ActiveWindow.DisplayZeros = True
LigFin = [A:A].Find("fin", SearchOrder:=xlByRows, SearchDirection:=xlNext, LookAt:=xlWhole, LookIn:=xlValues).Row
ColFin = [2:2].Find("0", SearchOrder:=xlByColumns, SearchDirection:=xlNext, LookAt:=xlWhole, LookIn:=xlValues).Column
If Err = 0 Then
ActiveSheet.PageSetup.PrintArea = Range("B2", Cells(LigFin - 1, ColFin - 1)).Address
Else
ActiveSheet.PageSetup.PrintArea = [A1].CurrentRegion.Address
End If
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Documents\stagiaire\"&onglet1!$A$1&"\2011\"&onglet2!$F$7&"\compterendu.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub
Pourriez-vous m’aiguiller sur la solution.
Merci à tous.
J’ai un petit souci concernant une macro que j’essaie de réaliser.
Cette macro me permet de convertir une page excel en fichier pdf (la zone à éditer est définie par l’utilisateur).
Cette macro fonctionne lorsque la destination du fichier pdf est fixe (cf version OK ci-dessous)
Sub editpdf()
'
' pdf Macro
'
'
ActiveWindow.DisplayZeros = True
LigFin = [A:A].Find("fin", SearchOrder:=xlByRows, SearchDirection:=xlNext, LookAt:=xlWhole, LookIn:=xlValues).Row
ColFin = [2:2].Find("0", SearchOrder:=xlByColumns, SearchDirection:=xlNext, LookAt:=xlWhole, LookIn:=xlValues).Column
If Err = 0 Then
ActiveSheet.PageSetup.PrintArea = Range("B2", Cells(LigFin - 1, ColFin - 1)).Address
Else
ActiveSheet.PageSetup.PrintArea = [A1].CurrentRegion.Address
End If
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
" C:\Documents\stagiaire\stagiaire1\2011\aptitude\compterendu.pdf ", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub
En revanche lorsque j’essaie de rendre variable la destination du fichier grâce à des valeurs saisies sur des onglets elle ne marche pas (cf version avec beug ci-dessous)
Sub editpdf()
'
' pdf Macro
'
'
ActiveWindow.DisplayZeros = True
LigFin = [A:A].Find("fin", SearchOrder:=xlByRows, SearchDirection:=xlNext, LookAt:=xlWhole, LookIn:=xlValues).Row
ColFin = [2:2].Find("0", SearchOrder:=xlByColumns, SearchDirection:=xlNext, LookAt:=xlWhole, LookIn:=xlValues).Column
If Err = 0 Then
ActiveSheet.PageSetup.PrintArea = Range("B2", Cells(LigFin - 1, ColFin - 1)).Address
Else
ActiveSheet.PageSetup.PrintArea = [A1].CurrentRegion.Address
End If
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Documents\stagiaire\"&onglet1!$A$1&"\2011\"&onglet2!$F$7&"\compterendu.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub
Pourriez-vous m’aiguiller sur la solution.
Merci à tous.