Exporter un sheet en fonction d'une cellule vide ou non

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 pas

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 pas

N'oubliez pas de remplacer "RepertoryPath" et "FileName" par vos propres valeurs.

Bonjour Abderrahmane Benali,

Merci d'avoir pris le temps de me répondre, cela fonctionne parfaitement.

Merci beaucoup

Rechercher des sujets similaires à "exporter sheet fonction vide"