Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > EXCEL-Soruları > Makro-VBA
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Makro-VBA Makro veya VBA ile ilgili sorularınızı buraya gönderebilirsiniz.
Dosya ekleyebilirsiniz

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 10-02-2018, 10:32   #1
htsumer
Altın Üye
 
htsumer kullanıcısının avatarı
 
Giriş: 07/09/2004
Şehir: Manisa
Mesaj: 697
Excel Vers. ve Dili:
Excel-2003
Varsayılan Listedeki İsimlere Göre Sayfa Sıralaması

Ekli dosyada ANA MENÜ sayfasındaki isimlere göre kart açıyorum. Fakat Bazen listedeki isimlerin sıralamasını değiştirmek zorunda kalıyorum. Bu nedenle açılan kartların sıralaması ile listedeki sıralama aynı olmuyor.
Sizlerden mümkünse İstediğim ANA MENÜ sayfasındaki isimlerin sıralamasına göre sayfalar sıraya girsin. Bazı isimleri en sona alıyorum ki kartı en sona gitsin diye.
Eklenmiş Dosyalar
Dosya Türü: xlsm SİTEYE_V23.xlsm (123.8 KB, 19 Görüntülenme)
__________________
İş:Excel-2010
htsumer Çevrimdışı   Alıntı Yaparak Cevapla
Eski 10-02-2018, 21:16   #2
YUSUF44
Destek Ekibi
 
YUSUF44 kullanıcısının avatarı
 
Giriş: 04/01/2006
Şehir: Manisa, Kula
Mesaj: 6,691
Excel Vers. ve Dili:
İş : Ofis 2016 - Türkçe Ev: Ofis 2016 - Türkçe
Varsayılan

Aşağıdaki makroyu deneyiniz:

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub sayfasırala()
Set S1 = Sheets("ŞABLON")
Set S2 = Sheets("RAPORLAR")
Set S3 = Sheets("ANA MENÜ")

Son = S1.Cells(Rows.Count, "B").End(3).Row

For cari = 2 To Son
    For Sayfa = 1 To Sheets.Count
        If Sheets(Sayfa).Name = S3.Cells(cari, "B") Then
            Sheets(Sayfa).Move After:=Sheets(cari + 1)
        End If
    Next
Next

End Sub
__________________


Sorularınızı örnek dosyayla desteklemeniz çözüme ulaşmanızı kolaylaştırır.

Altın Üye olmanızı öneririm. Altın Üye değilseniz dosyanızı dosya yükleme sitelerinden birine yükleyip linkini paylaşabilirsiniz.
YUSUF44 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 11-02-2018, 23:28   #3
Tevfik_Kursun
Altın Üye
 
Giriş: 30/07/2012
Şehir: Antakya
Mesaj: 1,192
Excel Vers. ve Dili:
2010 - Türkçe 64 Bit
Varsayılan

Teşekkürler Yusuf44 Arkadaşım
İyi çalışmalar
Tevfik_Kursun Çevrimdışı   Alıntı Yaparak Cevapla
Eski 12-02-2018, 07:57   #4
htsumer
Altın Üye
 
htsumer kullanıcısının avatarı
 
Giriş: 07/09/2004
Şehir: Manisa
Mesaj: 697
Excel Vers. ve Dili:
Excel-2003
Varsayılan

Çok teşekkür ederim. Gayet güzel olmuş..
__________________
İş:Excel-2010
htsumer Çevrimdışı   Alıntı Yaparak Cevapla
Eski 12-02-2018, 08:19   #5
htsumer
Altın Üye
 
htsumer kullanıcısının avatarı
 
Giriş: 07/09/2004
Şehir: Manisa
Mesaj: 697
Excel Vers. ve Dili:
Excel-2003
Varsayılan

Bir şey söylemek istiyorum. Gayet güzel sıralıyor listeye göre ama ANA MENÜ sayfasını da sıralamaya dahil ediyor. A serisine sokuyor
SIralanmasını istemediğim sayfalar

ŞABLON
Açıklama
RAPORLAR
Tahsil Raporlama
ANA MENÜ

Bunlar sabit kalacak..

Birde benim listem 135 kişilik ama en sondakini sıralamaya dahil etmiyor ve üzerindekileri.
__________________
İş:Excel-2010
htsumer Çevrimdışı   Alıntı Yaparak Cevapla
Eski 12-02-2018, 08:47   #6
askm
Altın Üye
 
Giriş: 04/06/2005
Şehir: k.maraş
Mesaj: 1,962
Excel Vers. ve Dili:
2010-2016
Varsayılan

Kodları aşağıdaki gibi revize edin.
Sayfa isimleri ANA MENÜ sayfasının B sütununda ise sıralar. Yoksa en sonda kalır.
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub sayfasırala()
Set S1 = Sheets("ŞABLON")
Set S2 = Sheets("RAPORLAR")
Set S3 = Sheets("ANA MENÜ")

Son = S3.Cells(Rows.Count, "B").End(3).Row
Sheets("ŞABLON").Move After:=Sheets(1)
Sheets("RAPORLAR").Move After:=Sheets(2)
Sheets("ANA MENÜ").Move After:=Sheets(3)
For cari = 2 To Son
    For Sayfa = 1 To Sheets.Count
        If Sheets(Sayfa).Name = S3.Cells(cari, "B") Then
            Sheets(Sayfa).Move After:=Sheets(cari + 2)
        End If
    Next
Next

End Sub
__________________
excel 2010- türkçe
askm Çevrimiçi   Alıntı Yaparak Cevapla
Eski 12-02-2018, 09:42   #7
YUSUF44
Destek Ekibi
 
YUSUF44 kullanıcısının avatarı
 
Giriş: 04/01/2006
Şehir: Manisa, Kula
Mesaj: 6,691
Excel Vers. ve Dili:
İş : Ofis 2016 - Türkçe Ev: Ofis 2016 - Türkçe
Varsayılan

Verdiğim ilk kod örnek dosyanızda doğru sonucu vermişti. Örnek dosyanızla aynı yapıda olmayan asıl dosyada farklı sonuç vermesi normaldir.

Kod örnek dosyanıza göre ilk 3 sayfa (ana menü, şablon, raporlar) en başta olacak şekilde iken ana menüdeki kişileri sıralamaktadır. Ana menünün B sütunundaki tüm kişileri eğer sayfa varsa sıralar. ana menüdeki isim listesiyle dosyanızdaki sayfalar uyumlu değilse hatalı sonuç vermesi normaldir.

Sayın askm'nin verdiği kodlardan yola çıkarak aşağıdaki kodu hazırladım. İnceleyiniz:
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub sayfasırala()
Set S1 = Sheets("ŞABLON")
Set S2 = Sheets("Açıklama")
Set S3 = Sheets("RAPORLAR")
Set S4 = Sheets("Tahsil Raporlama")
Set S5 = Sheets("ANA MENÜ")

S1.Move Before:=Sheets(1)
S2.Move After:=Sheets(1)
S3.Move After:=Sheets(2)
S4.Move After:=Sheets(3)
S5.Move After:=Sheets(4)

Son = S5.Cells(Rows.Count, "B").End(3).Row

For cari = 2 To Son
    For Sayfa = 6 To Sheets.Count
        If Sheets(Sayfa).Name = S5.Cells(cari, "B") Then
            Sheets(Sayfa).Move After:=Sheets(cari + 3)
        End If
    Next
Next

End Sub
__________________


Sorularınızı örnek dosyayla desteklemeniz çözüme ulaşmanızı kolaylaştırır.

Altın Üye olmanızı öneririm. Altın Üye değilseniz dosyanızı dosya yükleme sitelerinden birine yükleyip linkini paylaşabilirsiniz.

Bu mesaj en son " 12-02-2018 " tarihinde saat 09:48 itibariyle YUSUF44 tarafından düzenlenmiştir.... Neden: Kod düzeltme
YUSUF44 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 12-02-2018, 09:58   #8
htsumer
Altın Üye
 
htsumer kullanıcısının avatarı
 
Giriş: 07/09/2004
Şehir: Manisa
Mesaj: 697
Excel Vers. ve Dili:
Excel-2003
Varsayılan

Sayın askm kodunuz tamam oldu teşekkür ederim fakat belirlenen sayfaları sabitlemedi oda normal sıralanmasını istemediğim sayfaların sabitlenmesine ait düzenlemeyide sayın Yusuf düzenlemiş...
Ben sadece şu kodu en başa aldım
Application.ScreenUpdating = False
Bayağ titreme yapıyor çoklu listede..
Her ikinize de teşekkür ederim. Sağolun..Buda tamam
__________________
İş:Excel-2010

Bu mesaj en son " 12-02-2018 " tarihinde saat 10:03 itibariyle htsumer tarafından düzenlenmiştir....
htsumer Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 21:47


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım -- Beylikdüzü mali müşavir - Beylikdüzü mali müşavir - Lingerie - Dyeing Machine - Karton Bardak- Karton Bardak- Çorlu Dil Konuşma Terapisti- Çorlu Dil Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Özel Eğitim- Site Yönetimi- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Çorlu- Çorlu Araç Takip- Çorlu Su Arıtma- Gebze Emlak- Rampa- Rotary- Çorlu İnternet Sitesi- Çorlu Sürücü Kursu- Çorlu Sürücü Kursu- Şişli Avukat- Edirne Serbest Muhasebeci- Çorlu Etüt- İstanbul Botanik- Çorlu Sigorta- Kağıt Bardak- Kağıt Bardak- Kaplan Tekstil- Çorlu Perde- Çorlu Perde- Çorlu Havuz- Çorlu Havuz- Makina- Danışmazlar- Çorlu Perde Yıkama- Çorlu Perde Yıkama- Okul Danışmanlık- Çorlu Ayakkabı- İzmit Sigorta- ADR'li taşıma kabı imalatı- Mekanik Tesisat- Çorlu Grafik Tasarım-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden