Bir excel dosyasında bulunan birden fazla çalışma sayfasını tek tek dışarıya ayrı bir excel dosyası ile nasıl aktarılır? Bir excel dosyasında birden fazla sayfa üzerinde çalışıyor olabilirsiniz. Ancak bir süre sonra bunları dışarı aktarmak isteyebilirsiniz. Eğer sayfa sayısı çoksa tek tek yeni bir belge açıp kopyala yapıştır yapmak uzun bir işlem olacaktır. Bunun için excel de yazacağımız bir makro kodu bu işlemleri çok kısa süre içerisinde sizler için tamamlamaktadır.
Bu sayfaları şimdi dışa aktarmak istiyoruz. Bu işlem için Görünüm menüsünden Makrolar ı seçiyoruz. Ardından Makroları Görüntüle diyerek Makro sayfasını açıyoruz. Burada oluşturacağımız makroya isim vererek Oluştur diyoruz. Biz burada makromuza sayfaAyir ismini verdik.
Şimdi geldik kodumuzu yazmaya. Açılan sayfada aşağıda verdiğimiz kodu yapıştırıp dosya yolu kısmını dosyaların çıkarılmasını istediğiniz yeri yazabilirsiniz. Ardından kodu çalıştırarak sayfaları dışa aktarabilirsiniz.
Kodu çalıştırdıktan sonra Masaüstümüzde oluşturulan dosyaları görebiliriz.
Makro Kodu
Sub sayfaAyir()
Application.ScreenUpdating = False
Dim sayfa As Worksheet
Dim dosyayolu As String, dtimestamp As String
dosyayolu = "C:\Users\daSilva\Desktop\"
For Each sayfa In ThisWorkbook.Worksheets
sayfa.Copy
ActiveWorkbook.SaveAs Filename:=dosyayolu & sayfa.Name
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWorkbook.Save
ActiveWorkbook.Close
Next sayfa
Application.ScreenUpdating = True
End Sub
Kod sıkıntısız çalışıyor. 66 sayfalık excel kitabını ayrı ayrı kaydettim. Teşekkür ediyorum.
Teşekkür ederiz.
370 sayfalık excel dosyasında’da sorun yaşatmadı teşekkürler.
Kaydedeceği formatı ayarlayabiliyormuyuz ? Ben dosyayı .xsl olarak istiyorum bunun için çözüm önerisi varmıdır ?
Denemedim ama şöyle bir yol olabilir.
ActiveWorkbook.SaveAs Filename:=dosyayolu & sayfa.Name & “.xls”, FileFormat:=xlExcel8
Kullandığınız office e göre FileFormatı değiştirebilirsiniz.
FileFormat tiplerine https://learn.microsoft.com/en-us/office/vba/api/excel.xlfileformat bu adresten bakabilirsiniz.
Teşekkür ederiz.