Enregistrer sous en XLSX

redba90

XLDnaute Nouveau
Bonjour
j'ai un code qui fonctionne bien pour enregistrer en PDF, je voudrais faire la même mais en enregistrant mon fichier xlsm en xlsx

VB:
Sub SauverEnPDF()

Dim vararray() As String 
Dim csname As Integer 
Dim c As Integer 
Dim countarr As Integer
Dim r As Integer 
Dim sname As Worksheet 
Dim strFileName As String

   csname = Range("K2").Column
   c = Range("L2").Column
   Set sname = ActiveSheet
   r = Range("L2").Row
   countarr = 0

   While sname.Cells(r, csname) <> ""
      If sname.Cells(r, c) = 1 Then
         ReDim Preserve vararray(countarr)
         
         vararray(countarr) = sname.Cells(r, csname).Value
         countarr = countarr + 1
      End If
   r = r + 1
   Wend

   Sheets(vararray).Select

   strFileName = Application.GetSaveAsFilename(Filefilter:="PDF Files (*.pdf), *.pdf", Title:="Entrez le nom du fichier")

   If strFileName <> "False" And strFileName <> "Faux" Then

      ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFileName _
       , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
       :=False, OpenAfterPublish:=False

   End If

   sname.Select

   Set sname = Nothing

End Sub

Merci pour votre aide
 

danielco

XLDnaute Accro
Ajoute (non testé) :

VB:
   Sheets(vararray).Copy
   ActiveSheet.SaveAs ThisWorkbook.Path & "\" & "abcdef.xlsx", xlOpenXMLWorkbook
   ActiveWorkbook.Close
Après :

Code:
   If strFileName <> "False" And strFileName <> "Faux" Then

      ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFileName _
       , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
       :=False, OpenAfterPublish:=False

   End If

Le fichier s'appelle "abcdef.xlsx" dans le même dossier que le fichier existant.

Daniel
 

Discussions similaires

Statistiques des forums

Discussions
312 193
Messages
2 086 062
Membres
103 110
dernier inscrit
Privé