herkese merhabalar. şimdi 10 tane exel dosyam var bunlar aynı şablonda ama farklı verileri içeriyor. bunları tek bir exelde sayfa sayfa toplamam gerekiyor.bunun kolay bi yolu varmıdır. şimdiden teşekkürler.
Son düzenleme:
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
MerhabaAralarda açılan fazla sayfalar ne için onu anlayamadım.
[SIZE="2"]Private Sub CommandButton1_Click()
Dim wb As Workbook, sh As Integer
Dim ds, f, dc, dosya, sheet
Dim h As String
Set wb = ThisWorkbook
Set ds = CreateObject("Scripting.FileSystemObject")
Set f = ds.GetFolder(ThisWorkbook.Path & "\20161209")
Set dc = f.Files
For Each dosya In dc
Workbooks.Open dosya
h = Split(dosya.Name, ".")(UBound(Split(dosya.Name, ".")) - 1)
For Each sheet In Workbooks(h).Worksheets
sh = wb.Worksheets.Count
Workbooks(h).Worksheets(sheet.Name).Copy _
after:=wb.Worksheets(sh)
Exit For
Next sheet
Workbooks(h).Close savechanges:=False
Next
End Sub[/SIZE]
Merhabamerhabalar. dosyayı ve kodları denedim bende çalışmadı ne yazıkki. runtime hatası verdi.
Set f = ds.GetFolder(ThisWorkbook.Path & "\[COLOR="Red"]20161209[/COLOR]")

Merhabaevet sizde istediğim gibi çalışıyor. klasör ismini değiştirmedim normalde açması gerekirken
"runtime error'9'"
SUBSCRİPT OUT OF RANGE
hatası alıyorum.Acaba bilgisayardan mı kaynaklı diye arkadaşımda denedim ondada aynı hatayı verdi.
[SIZE="2"]Private Sub CommandButton1_Click()
Dim wb As Workbook, sh, s As Integer
Dim ds, f, dc, dosya, sheet
Dim h As String
Set wb = ThisWorkbook
Set ds = CreateObject("Scripting.FileSystemObject")
Set f = ds.GetFolder(ThisWorkbook.Path & "\20161209")
Set dc = f.Files
For Each dosya In dc
If Left(Split(dosya.Name, ".")(UBound(Split(dosya.Name, "."))), 3) = "xls" Then
Workbooks.Open dosya
h = Split(dosya.Name, ".")(UBound(Split(dosya.Name, ".")) - 1)
Application.ScreenUpdating = False
For Each sheet In Workbooks(h).Worksheets
[COLOR="Red"]If Workbooks(h).Worksheets(sheet.Name).Visible = True Then[/COLOR]
sh = wb.Worksheets.Count
Workbooks(h).Worksheets(sheet.Name).Copy _
after:=wb.Worksheets(sh)
[COLOR="Blue"] Exit For[/COLOR]
[COLOR="Red"]End If[/COLOR]
Next sheet
Application.ScreenUpdating = True
Workbooks(h).Close savechanges:=False
End If
Next
End Sub[/SIZE]