Fetetch Sheet1 Données de plusieurs classeurs dans un classeur unique à l'aide de VBA ou de macros
Option Explicit
Sub MergeExcels()
Dim Path As String, FName As String
Dim wb As Workbook
Dim ws As Worksheet
Path = ""
FName = Dir(Path & "*.xlsx")
With ThisWorkbook
Do While FName <> ""
Set wb = Workbooks.Open(Path & FName, ReadOnly:=True)
For Each ws In wb.Worksheets
ws.Copy After:=.Sheets(.Sheets.Count)
Next ws
wb.Close SaveChanges:=False
FName = Dir()
Loop
End With
End Sub
3 Réponses :
changer: à: p> ou, si vous voulez dire la première feuille de calcul au lieu de la feuille nommée "/ p>
Le code a l'air bien, mais même il ne peut même pas courir ou jeter une erreur
Ensuite, il y a une erreur dans le reste de votre code. Veuillez expliquer où l'erreur apparaît et quelle est l'erreur.
Impossible d'identifier l'endroit où l'erreur acquise ou une ligne spécifique, aidez-moi à travers
Je ne peux pas identifier où l'erreur acquise ou une ligne spécifique i> Il doit y avoir une bande jaune / rouge vif sur votre code, c'est là que l'erreur se produit, il existe également une boîte de message qui apparaît et vous donne une erreur code. L'un ou l'autre serait apprécié. Si votre erreur est que le code est exécuté mais ne produit pas la sortie que vous attendez, veuillez expliquer la différence entre les attentes et les résultats.
Oui, je trouve une ligne jaune sans erreur rouge et message contextuel, je veux chercher la partise1 des données sur un classeur unique
Option Explicit
Sub MergeExcels()
Dim Path As String, FName As String
Dim wb As Workbook
Dim ws As Worksheet
Path = "D:\BILL'S\Thankam\2019\June\Bills"
FName = Dir(Path & "*.xlsx")
With ThisWorkbook
Do While FName <> ""
Set wb = Workbooks.Open(Path & FName, ReadOnly:=True)
wb.Worksheets("Sheet1").Copy After:=.Sheets(.Sheets.Count)
wb.Close SaveChanges:=False
FName = Dir()
Loop
End With
End Sub
Option explicite SUB MERGEEXCels ()
Dim Path As String, FName As String
Dim wb As Workbook
Dim ws As Worksheet
Path = "D:\BILL'S\Thankam\2019\June\Bills"
FName = Dir(Path & "*.xlsx")
With ThisWorkbook
Do While FName <> ""
Set wb = Workbooks.Open(Path & FName, ReadOnly:=True)
wb.Worksheets(1).Copy After:=.Sheets(.Sheets.Count)
wb.Close SaveChanges:=False
FName = Dir()
Loop
End With