Excel kitabı sayfalarını yeni oluşturulan bir kitaba makrosuz olarak kopyalattırarak yeni bir adla kaydettirmek için aşağıdaki makroyu kullanıyorum.
Sub Kopyala()
Dim WS As Worksheet
Dim i As Integer
Dim sarrWS() As String
ReDim sarrWS(1 To ThisWorkbook.Worksheets.Count)
i = 0
For Each WS In ThisWorkbook.Worksheets
i = i + 1
sarrWS(i) = WS.Name
Next WS
ThisWorkbook.Worksheets(sarrWS()).Copy
Application.Dialogs(xlDialogSaveAs).Show
End Sub
Bu makroya 2 özellik eklemek istiyorum.
1)Makro asıl dosyada bulunan "stok" ve "sonuç" sayfalarını kopyalatmayacak, diğer sayfalar kopyalanacak. (Bu konuda birçok denemem oldu ancak hepsi hüsranla sonuçlandı.)
2)Ana dosya sayfaları şifreyle korunmuş durumda, kopya dosyasında ise sayfaların koruma şifresiyle korunmasını istemiyorum, yani sayfalar kopyalanırken sayfa koruma özellikleri kopyalanmacak.
Yukarıdaki makro bu özellikleri kapsayacak şekilde nasıl yeniden düzenlenebilir? Veya bu işlemleri yaptıracak başka bir mokro nasıl yazılır?
Sub Kopyala()
Dim WS As Worksheet
Dim i As Integer
Dim sarrWS() As String
ReDim sarrWS(1 To ThisWorkbook.Worksheets.Count)
i = 0
For Each WS In ThisWorkbook.Worksheets
i = i + 1
sarrWS(i) = WS.Name
Next WS
ThisWorkbook.Worksheets(sarrWS()).Copy
Application.Dialogs(xlDialogSaveAs).Show
End Sub
Bu makroya 2 özellik eklemek istiyorum.
1)Makro asıl dosyada bulunan "stok" ve "sonuç" sayfalarını kopyalatmayacak, diğer sayfalar kopyalanacak. (Bu konuda birçok denemem oldu ancak hepsi hüsranla sonuçlandı.)
2)Ana dosya sayfaları şifreyle korunmuş durumda, kopya dosyasında ise sayfaların koruma şifresiyle korunmasını istemiyorum, yani sayfalar kopyalanırken sayfa koruma özellikleri kopyalanmacak.
Yukarıdaki makro bu özellikleri kapsayacak şekilde nasıl yeniden düzenlenebilir? Veya bu işlemleri yaptıracak başka bir mokro nasıl yazılır?
