Aktif sayfadaki hücre değerine göre tüm satırı sayfanın altına nasıl taşırsınız?
Excel'de, genellikle belirli bir sütundaki durum veya değere göre verilerinizi yeniden düzenlemeniz gerekebilir. Örneğin, görev ilerlemesini takip ettikten sonra, durumu "Bitti" olan tüm satırları çalışma sayfanızın altına taşımak ve aktif veya devam eden görevleri üstte tutmak isteyebilirsiniz. Bir hücre değerine göre tüm satırları otomatik olarak yeniden yerleştirmek, çalışma sayfanızı daha kolay yönetmenizi sağlar, öncelikleri vurgular ve bitmemiş öğelere odaklanmanızı kolaylaştırır.
Excel'de bunu başarmak için VBA kodunu kullanarak otomasyon veya formüller ve Excel'in yerleşik sıralama işlevselliğini kullanma dahil olmak üzere çeşitli yöntemler vardır. Her yaklaşımın kendine özgü güçlü yönleri vardır ve farklı senaryolar için uygundur. Aşağıda, size belirli bir hücre değerine göre tüm satırları aktif çalışma sayfanızın altına taşımaya yardımcı olacak adım adım çözümler bulunmaktadır.
- VBA koduyla aktif sayfadaki hücre değerine göre tüm satırı sayfanın altına taşıma
- Excel formülleri ve sıralama kullanarak tüm satırı en alta taşıma
VBA koduyla aktif sayfadaki hücre değerine göre tüm satırı sayfanın altına taşıma
Diyelim ki, C sütununda "Bitti" gibi bir durum içeren bir tablonuz var ve C sütununda "Bitti" olan herhangi bir satırın anında veri aralığınızın sonuna taşınmasını istiyorsunuz. Bu VBA çözümü, özellikle dinamik veri değişikliklerini manuel sıralama olmadan ele alabilen tekrarlanabilir, yarı otomatik bir süreç istiyorsanız çok faydalıdır.
1. Microsoft Visual Basic for Applications penceresini açmak için Alt + F11 tuşlarına aynı anda basın.
2. Microsoft Visual Basic for Applications penceresinde, Insert > Module (Ekle > Modül) seçeneğine tıklayın. Ardından aşağıdaki VBA kodunu kopyalayıp pencereye yapıştırın.
VBA kodu: Aktif sayfadaki hücre değerine göre tüm satırı sayfanın altına taşıma
Sub MoveToEnd()
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xEndRow As Long
Dim I As Long
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
lOne:
Set xRg = Application.InputBox("Select range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
If xRg.Columns.Count > 1 Or xRg.Areas.Count > 1 Then
MsgBox " Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
GoTo lOne
End If
xEndRow = xRg.Rows.Count + xRg.Row
Application.ScreenUpdating = False
For I = xRg.Rows.Count To 1 Step -1
If xRg.Cells(I) = "Done" Then
xRg.Cells(I).EntireRow.Cut
Rows(xEndRow).Insert Shift:=xlDown
End If
Next
Application.ScreenUpdating = True
End Sub
Not: Bu VBA kodunda atıfta bulunulan özel değer “Bitti”dir. Kod içinde bu değeri değiştirebilir ve istediğiniz değere uygun hale getirebilirsiniz (örneğin, "Tamamlandı" veya iş akışınıza uygun başka bir duruma değiştirebilirsiniz). Değerin tam olarak eşleştiğinden emin olun, büyük küçük harf ve boşluklar da dahil olmak üzere. Gerekirse kodu büyük küçük harfe duyarsız eşleştirme için ayarlayabilirsiniz.
3. Kodu çalıştırmak için F5 tuşuna basın veya Çalıştır düğmesine tıklayın. Kutools for Excel iletişim kutusu açıldığında, hedef değerin görünebileceği sütun aralığını seçin ve ardından Tamam düğmesine tıklayın.
Onayladıktan sonra, kod seçtiğiniz sütunda "Bitti" değerine sahip satırları otomatik olarak arayacak ve onları veri aralığınızın altına taşıyacaktır. Bu düzenleme anında gerçekleşir ve manuel olarak sıralama veya satırları sürüklemek için harcayacağınız zamandan sizi kurtarır.
İpuçları:
- Başlıklarınız varsa, başlık satırını hareket ettirmemek için seçimde onları dahil etmemeye dikkat edin.
- Bu VBA betiği yalnızca şu anda aktif olan çalışma sayfasına uygulanır. Bu işlemi birden fazla sayfada gerçekleştirmeniz gerekiyorsa, her sayfa için işlemi tekrarlayın.
- Verilerinizde formüller veya bağlantılı hücreler varsa, satırları taşımak referansların kaymasına neden olabilir. Makroyu çalıştırdıktan sonra çalışma sayfanızı kontrol ederek veri bütünlüğünü sağladığınızdan emin olun.
Bu VBA yöntemi, özellikle manuel sıralamanın verimsiz olduğu durumlarda, düzenli olarak çok sayıda satırı işlemek zorunda kaldığınız durumlarda avantaj sağlar. Ancak makroları içermeyen bir çözüm gerektiren durumlarda veya formüller ve Excel’in standart araçlarıyla doğrudan çalışmayı tercih ediyorsanız, bir sonraki yönteme geçin.

Kutools AI ile Excel Sihirini Keşfedin
- Akıllı Yürütme: Hücre işlemleri gerçekleştirin, verileri analiz edin ve grafikler oluşturun—tümü basit komutlarla sürülür.
- Özel Formüller: İş akışlarınızı hızlandırmak için özel formüller oluşturun.
- VBA Kodlama: VBA kodunu kolayca yazın ve uygulayın.
- Formül Yorumlama: Karmaşık formülleri kolayca anlayın.
- Metin Çevirisi: Elektronik tablolarınız içindeki dil engellerini aşın.
Excel formülleri ve sıralama kullanarak tüm satırı en alta taşıma
Makro kullanmak istemeyen veya verilerini daha şeffaf, formül tabanlı bir şekilde yönetmek isteyen kullanıcılar için, yardımcı sütunlar ve Excel’in yerleşik sıralama işlevselliği kullanılarak aynı etkiyi elde edebilirsiniz. Bu yöntem, işbirliğine dayalı ortamlarda veya makro güvenlik ayarlarının etkin olabileceği diğer kişilerle paylaşılması gereken dosyalarda iyi çalışır.
1. Mevcut verilerinizin sağında veya solunda yeni bir yardımcı sütun ekleyin. Örneğin, veri başlıklarınız 1. satırda ve değerler 2. satırdan başlıyorsa ve durumunuz C sütununda ise, yeni bir D sütunu ekleyin ve ona "SortKey" veya benzeri bir isim verin.
2. Yardımcı sütunun ilk hücresine (başlığı hariç, örneğin D2), aşağıdaki formülü girin:
=IF(C2="Done",1,0)
Bu formül, C sütununda "Bitti" olan satırlara 1, diğer tüm satırlara 0 atayacaktır.
3. Formülü onaylamak için Enter tuşuna basın, ardından formülü tüm veri satırlarınız boyunca kopyalayın. D2'deki dolgu tutamacını aşağıya doğru son veri satırınıza kadar sürükleyin veya bitişik sütun doldurulmuşsa dolgu tutamacına çift tıklayarak otomatik olarak doldurun.
4. Veri aralığınızda herhangi bir hücre seçin, ardından Excel menüsünden Veri sekmesine gidin ve Sırala düğmesine tıklayın.
5. Sırala iletişim kutusunda, "Sırala" açılır menüsünden yardımcı sütununu ("SortKey") seçin ve En küçükten en büyüğe sıralama düzenini seçin. Bu, "Bitti" olan tüm satırları (1 olarak işaretlenmiş) en alta, geri kalanını (0 olarak işaretlenmiş) en üste taşır.
6. Sıralamayı uygulamak için Tamam'a tıklayın. Verileriniz şimdi, tamamlanmış veya "Bitti" olarak işaretlenmiş tüm girişler tablonun en altında olacak şekilde yeniden düzenlenmiştir.
Parametre açıklamaları ve ipuçları:
- Formüldeki "Bitti" ifadesini sayfanızla ilgili başka bir durum göstergesiyle değiştirebilirsiniz (örneğin, "Tamamlandı", "Aktif değil"). Yazımın verilerinizle tam olarak eşleştiğinden emin olun.
- Birden fazla değer içeren satırları taşımak istiyorsanız (örneğin hem "Bitti" hem de "İptal Edildi"), şu formülü kullanın:
=IF(OR(C2="Done",C2="Canceled"),1,0)
- Etkiyi tersine çevirmek için (yani "Bitti" satırlarını en üste taşımak), En büyükten en küçüğe sıralama düzenini kullanın veya formülde 0 ve 1'i değiştirin.
Bu yaklaşım hiçbir satırı silmez veya gizlemez ve veri yapınızı korur. Başkalarıyla işbirliği yapmak, farklı Excel sürümleri arasında uyumluluğu sağlamak ve makro etkin dosyalarla potansiyel sorunları önlemek için idealdir.
İlgili makaleler:
En İyi Ofis Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi güçlendirin ve benzersiz bir verimlilik deneyimi yaşayın. Kutools for Excel, üretkenliği artırmak ve zamandan tasarruf etmek için300'den fazla Gelişmiş Özellik sunuyor. İhtiyacınız olan özelliği almak için buraya tıklayın...
Office Tab, Ofis uygulamalarına sekmeli arayüz kazandırır ve işinizi çok daha kolaylaştırır.
- Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma işlevini etkinleştirin.
- Yeni pencereler yerine aynı pencerede yeni sekmelerde birden fazla belge açıp oluşturun.
- Verimliliğinizi %50 artırır ve her gün yüzlerce mouse tıklaması azaltır!
Tüm Kutools eklentileri. Tek kurulum
Kutools for Office paketi, Excel, Word, Outlook & PowerPoint için eklentileri ve Office Tab Pro'yu bir araya getirir; Office uygulamalarında çalışan ekipler için ideal bir çözümdür.





- Hepsi bir arada paket — Excel, Word, Outlook & PowerPoint eklentileri + Office Tab Pro
- Tek kurulum, tek lisans — dakikalar içinde kurulun (MSI hazır)
- Birlikte daha verimli — Ofis uygulamalarında hızlı üretkenlik
- 30 günlük tam özellikli deneme — kayıt yok, kredi kartı yok
- En iyi değer — tek tek eklenti almak yerine tasarruf edin