Exporter un sheet en fonction d'une cellule vide ou non
Invité
Bonjour le forum,
j'aimerai exporter l'un ou l'autre sheet en pdf en fonction de la valeur d'une cellule.
Je m'explique :
en gros, si la valeur de la cellule "C60" du "sheet2" = vide, exporter le "sheet1", sinon exporter le "sheet2".
Voir la même chose avec 3 sheets : si la valeur de la cellule "C60" du "sheet3" n'est pas vide exporter le "sheet3", sinon regarder dans le "sheet2" si la valeur de la cellule "C60", si vide exporter le "sheet1" , sinon exporter le "sheet2".
pour le moment mon code ressemble à ceci :
' Export PDF
Sheets(Array("Sheet1")).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
FileName:=RepertoryPath & FileName, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True ' TRUE = Affiche le PDF après impression, FALSE = Ne l'affiche pasA
Bonjour,
Un code à tester :
Dim ws As Worksheet
Dim shtName As String
' Définir le sheet en fonction de la condition
If Sheets("Sheet3").Range("C60").Value <> "" Then
shtName = "Sheet3"
ElseIf Sheets("Sheet2").Range("C60").Value <> "" Then
shtName = "Sheet2"
Else
shtName = "Sheet1"
End If
Set ws = ThisWorkbook.Sheets(shtName)
' Export PDF
ws.ExportAsFixedFormat Type:=xlTypePDF, _
FileName:=RepertoryPath & FileName, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True ' TRUE = Affiche le PDF après impression, FALSE = Ne l'affiche pasN'oubliez pas de remplacer "RepertoryPath" et "FileName" par vos propres valeurs.
Invité
Bonjour Abderrahmane Benali,
Merci d'avoir pris le temps de me répondre, cela fonctionne parfaitement.
Merci beaucoup