Macro Ne copier que dans un classeur unique les onglets avec numéros

Anna_2013

XLDnaute Junior
Bonsoir,
J'ai développé une macro me permettant de combiner plusieurs fichiers excels dans un seul fichier.

Ces fichiers contiennent un nombre d'onglets différents

Je souhaiterai adapter pour ne récupérer que les onglets marqués Note 1, Note 2 et non ceux retrieves ou autres données.

Pourriez vous svp m'aider à la modifier.

Par avance merci pour votre aide
 

Papou-net

XLDnaute Barbatruc
Re : Macro Ne copier que dans un classeur unique les onglets avec numéros

Bonjour Anna_2013,

Je te propose de modifier ta procédure CombineFiles comme ceci:

Code:
Sub CombineFiles()
Dim path            As String
Dim FileName        As String
Dim LastCell        As Range
Dim Wkb             As Workbook
Dim WS              As Worksheet
Dim ThisWB          As String
 
ThisWB = ThisWorkbook.Name
Application.EnableEvents = False
Application.ScreenUpdating = False
path = GetDirectory
FileName = Dir(path & "\*.xls", vbNormal)
Do Until FileName = ""
    If FileName <> ThisWB Then
        Set Wkb = Workbooks.Open(FileName:=path & "\" & FileName)
        For Each WS In Wkb.Worksheets
          If WS.Name Like "Note*" Then
            Set LastCell = WS.Cells.SpecialCells(xlCellTypeLastCell)
            If LastCell.Value = "" And LastCell.Address = Range("$A$1").Address Then
            Else
                WS.Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
            End If
          End If
        Next WS
        Wkb.Close False
    End If
    FileName = Dir()
Loop
Application.EnableEvents = True
Application.ScreenUpdating = True

Set Wkb = Nothing
Set LastCell = Nothing
End Sub
J'y ai simplement ajouté une condition de test de présence du mot "Note" dans la boucle de lecture des onglets.

Cordialement.
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 321
Messages
2 087 265
Membres
103 501
dernier inscrit
talebafia