• DİKKAT

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

Sayfaların Yerleri Değiştirilmesin

Katılım
13 Aralık 2005
Mesajlar
53
Excel Vers. ve Dili
Office 2003 - Türkçe
Office 2007 - İngilizce
Merhaba.Excel sayfalarımın yerini değiştirdiğimde, userformumdaki comboboxtada sayfa adları değişiyor.Örneğin; excel dosyamda 10 sayfa varsa comboboxta bunlardan 2. 3. ve 4. sayfaları açıyorum.Ama sayfaları yer değiştirdiğimde comboboxtaki sayfa adlarıda değişiyor.Ben sayfa yerleri değiştirilmesin istiyorum.Yardımlarınız için şimdiden teşekkürler. :hey:
 
Bu kodu ilgili çalışma kitabının ThisWorbook bölümüne yapıştırıp deneyiniz.

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
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
Next
End Sub
 
Yardımız için teşekkürler.Dediklerinizi yaptım.Ancak hala daha sayfa yerlerini değiştirebiliyorum.Bunun başka bir yolu yokmu?
 
Ben sayfa yerleri değiştirilmesin istiyorum.Yardımlarınız için şimdiden teşekkürler.
Bunun için çalışma kitabınıza koruma koyabilirsiniz. Yada comboboxa additem ile direk sayfa adlarını yüklerseniz, yerleri değişse bile comboboxtaki veriler değişmez. Örneğin;

[vb:1:dccfb91293]combobox1.additem "sayfa2"
combobox1.additem "sayfa4"
.
.
[/vb:1:dccfb91293]
 
Sayın SUMIF

aşağıdaki kodları sayfalarınıza göre uyarlayarak(herbir sayfa için) çalışmanızın ThisWorkbook
bölümüne kaydedin.
Private Sub Workbook_open()

'ANAMENÜ isimli sheeti en başa taşır
Sheets("ANAMENÜ").Select
Sheets("ANAMENÜ").Move before:=Sheets(1)
'MüşteriListesi isimli sheeti en başa taşır
Sheets("MüşteriListesi").Move before:=Sheets(2)

'ÜrünBilgileri isimli sheeti 3. sıraya taşır
Sheets("ÜrünBilgileri").Move before:=Sheets(3)
End Sub
Böylece dosyanızı her açtığınızda sizin belirlediğiniz gibi sheetler sıralanmış olur.İsterseni zbunu macro olarak istediğiniz yere atabilirsiniz.Ayrıca userforma
Private Sub UserForm_Initialize()
On Error Resume Next

Dim i As Integer
For i = 4 To Worksheets.Count
combobox1.AddItem Worksheets(i).Name
Next i
urunad.SetFocus
End Sub

kodunu eklediğinizde comboboxta 4.sayfadan itibaren sayfaları görebilirsiniz
 
Çok teşekkür ederim.Ellerinize sağlık.
 
Geri
Üst