Çoklu Sayfa Seçimi.

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
605
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Altın Üyelik Bitiş Tarihi
05-04-2025
İşyerimde yaptığım bi çalışma için; belli bir sayfadan sonraki ardışık sayfaları, yeni bir excel dosyasına taşımam gerekti.
Forumda aradım. Ama uygun kodları bulamadım. İnternette çoğunlukla array ile çözümler verilmişti. O çözümler de istediğim gibi değlidi.

Biraz daha araştırdıktan sonra bu kodları buldum. Basit ve etkili. Belki ihtiyacı olan olur diye buraya da ekliyeyim dedim.

Kod:
Sub Kopya ()


Sheets(4).Activate '4. safya dahil sonrası için seçim başlangıcı. İhtiyacınıza göre bu sayıyı değiştirebilirsiniz. For I döngüsünü de bu rakama göre ayarlamalısınız.

      For I = 4 To Sheets.Count

           Sheets(I).Select (False)
    
     Next

ActiveWindow.SelectedSheets.Move  'Move yerine Copy yaparsanız yeni bir dosyaya kopyalar.

End Sub
,
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,333
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Paylaşımınız için teşekkürler.

Benzer alternatifler;

C++:
Option Explicit

Sub Sayfa_Sec()
    Dim Sayfa As Worksheet

    For Each Sayfa In ThisWorkbook.Worksheets
        If Sayfa.Index > 3 Then Sayfa.Select False
    Next

    ActiveWindow.SelectedSheets.Copy
End Sub
C++:
Option Explicit

Sub Sayfa_Sec()
    Dim Sayfa As Worksheet, Say As Integer
   
    ReDim Sayfalar(1 To 1)
   
    For Each Sayfa In ThisWorkbook.Worksheets
        If Sayfa.Index > 3 Then
            Say = Say + 1
            ReDim Preserve Sayfalar(1 To Say)
            Sayfalar(Say) = Sayfa.Name
        End If
    Next
   
    Sheets(Sayfalar).Select
End Sub
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
605
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Altın Üyelik Bitiş Tarihi
05-04-2025
Üstad alternatifler için teşekkürler ;)
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,333
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Başka bir alternatif;

C++:
Option Explicit

Sub Sayfa_Sec()
    Sheets(Application.Transpose(Evaluate("Row(" & "4:" & Sheets.Count & ")"))).Select
End Sub
 
Üst