• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Kod Düzenleme, Sayfaları Alfabetik Sıralama

Katılım
5 Kasım 2007
Mesajlar
4,727
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Merhaba,

Aşağıdaki kod, sekmeleri (sayfaları) alfabetik sıralamakta,

İsteğim ; Kod'un 1 ve 8 nci sekmeler (sayfalar) hariç alfabetik sıralama yapması,

Teşekkür ederim.

Kod:
Sub Auto_Open()
Dim i As Integer
Dim j As Integer
If Worksheets.Count = 1 Then Exit Sub
For i = 1 To Worksheets.Count - 1
For j = i + 1 To Worksheets.Count
If Worksheets(j).Name < Worksheets(i).Name Then
Worksheets(j).Move before:=Worksheets(i)
End If
Next j
Next i
End Sub
 
. . .

Bu 2 sayfayı en başamı alacak yoksa yerleri hiç değişmeyecek mi.

. .
 
. . .

End Sub satırından önce şu 2 satırı ilave edin.

Kod:
    Sheets("Sayfaİsmi2").Move Before:=Sheets(1) [COLOR="Green"]' 2.sıra için[/COLOR]
    Sheets("Sayfaİsmi1").Move Before:=Sheets(1) [COLOR="Green"]' 1.sıra için[/COLOR]

. . .
 
. . .

End Sub satırından önce şu 2 satırı ilave edin.

Kod:
    Sheets("Sayfaİsmi2").Move Before:=Sheets(1) [COLOR="Green"]' 2.sıra için[/COLOR]
    Sheets("Sayfaİsmi1").Move Before:=Sheets(1) [COLOR="Green"]' 1.sıra için[/COLOR]

. . .

Sayın Hüseyin Çoban, tekrar merhaba,

Kod'a gönderdiğiniz şekilde ilave yaptım, ancak "debug" hatası aldım.

Dosya'yı ekledim.İlgilenebilir seniz memnun olurum.

Teşekkür ederim.
 

Ekli dosyalar

. . .

Sanırım biraz acele ettiniz... Gözünüzden kaçtı.

Kodlar şu şekilde olmalı.

Kod:
Sub Auto_Open()
    Dim i As Integer
    Dim j As Integer
    If Worksheets.Count = 1 Then Exit Sub
    For i = 1 To Worksheets.Count - 1
        For j = i + 1 To Worksheets.Count
            If Worksheets(j).Name < Worksheets(i).Name Then
                Worksheets(j).Move Before:=Worksheets(i)
            End If
        Next j
    Next i
    Sheets("[COLOR="DarkRed"]RAPOR[/COLOR]").Move Before:=Sheets(1) ' 2.sıra için
    Sheets("[COLOR="DarkRed"]GİRİŞ[/COLOR]").Move Before:=Sheets(1) ' 1.sıra için
End Sub

do.php


. . .
 
. . .

Sanırım biraz acele ettiniz... Gözünüzden kaçtı.

Kodlar şu şekilde olmalı.

Kod:
Sub Auto_Open()
    Dim i As Integer
    Dim j As Integer
    If Worksheets.Count = 1 Then Exit Sub
    For i = 1 To Worksheets.Count - 1
        For j = i + 1 To Worksheets.Count
            If Worksheets(j).Name < Worksheets(i).Name Then
                Worksheets(j).Move Before:=Worksheets(i)
            End If
        Next j
    Next i
    Sheets("[COLOR="DarkRed"]RAPOR[/COLOR]").Move Before:=Sheets(1) ' 2.sıra için
    Sheets("[COLOR="DarkRed"]GİRİŞ[/COLOR]").Move Before:=Sheets(1) ' 1.sıra için
End Sub

do.php


. . .

Merhaba,

Evet haklısınız, acelecilikten değil, dikkatsizlikten oldu, sizi de boş yere meşgul ettim, kusuruma bakmayın.

Tekrar teşekkür ederim.

Saygılarımla Sayın Hüseyin Çoban.
 
Geri
Üst