Excel'de bir onay kutusu işaretlendiğinde belirli bir satırı yeni bir sayfaya nasıl taşıyabilirim?
Günlük Excel kullanımında, kullanıcılar genellikle görev durumu listeleri, sipariş işleme formları veya veri inceleme kontrol listeleri gibi senaryolarda bir onay kutusunun işaretlenip işaretlenmediğine bağlı olarak bir satırı başka bir sayfaya veya çalışma sayfasına taşımak zorunda kalır. Bu süreci otomatikleştirerek iş akışı verimliliğini artırabilir ve verilerinizin net, düzenli bir genel görünümünü sağlayabilirsiniz. Bu makalede, bir onay kutusu işaretlendiğinde belirli bir satırı yeni bir sayfaya taşımanın farklı operasyonel tercihlere ve veri yönetimi ihtiyaçlarına uygun çeşitli pratik yolları açıklanmaktadır.
- Onay kutusu işaretlendiğinde satırı VBA koduyla taşı
- Excel Formülü – Taşınacak satırları işaretleme ve filtreleme
Onay kutusu işaretlendiğinde satırı VBA koduyla taşı
Bir onay kutusunu işaretlediğinizde belirli bir satırın otomatik olarak belirttiğiniz çalışma sayfasına taşınmasını istiyorsanız, Excel’in VBA’sı (Visual Basic for Applications) yüksek düzeyde özelleştirilebilir bir çözüm sunar. Bu yöntem, özellikle büyük veri kümeleriyle çalışan ya da bu işlemi sık sık tekrarlayan kullanıcılar için son derece kullanışlıdır.
1. Onay kutusu durumuna göre satır taşımak istediğiniz çalışma sayfasını açın. Şeritte Geliştirici > Ekle > Onay Kutusu (ActiveX Denetimi) seçeneğine giderek sayfanıza bir onay kutusu ekleyin. Bu denetim, eylemleri onay kutusuna bağlamaya olanak tanır. Ekran görüntüsüne bakın:

2. Excel penceresinin alt kısmında bulunan çalışma sayfası sekmesine sağ tıklayın ve açılan bağlam menüsünden Kodu Görüntüle seçeneğini seçerek ilgili sayfanın kod penceresini açın. Ekran görüntüsüne bakın:

3. Açılan Microsoft Visual Basic for Applications penceresinde aşağıdaki VBA kodunu kopyalayıp kod penceresine yapıştırın:
VBA kodu: Onay kutusu işaretlendiğinde satırı belirtilen çalışma sayfasına taşı
Private Sub CheckBox1_Click()
Dim xRg As Range
Dim xAddress As String
On Error Resume Next
If CheckBox1.value Then
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select the range row you will move(single cell):", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xRg = xRg(1).EntireRow
xRg.Copy
ActiveWorkbook.Sheets("Sheet3").Range("A1").PasteSpecial xlPasteAllUsingSourceTheme
xRg.Clear
Application.CutCopyMode = False
End If
End Sub Notlar: Kodda Sheet3 ve A1, belirtilen satırın Sheet3’ün ilk satırına taşınacağını gösterir. Bunları ihtiyaçlarınıza göre değiştirin. Örneğin, satırı Sheet2 sayfasının B10 hücresinden itibaren taşımak istiyorsanız, bu değerleri kodda ilgili şekilde güncelleyin.
Makroyu düzenlerken dikkatli olun. Yanlış değişiklikler hatalara veya istenmeyen veri hareketlerine neden olabilir. Yaptığınız değişiklikleri geri almanız gerekebileceği için yeni VBA kodunu çalıştırmadan önce mutlaka çalışma kitabınızı kaydedin.
4. Kodu girdikten sonra VBA düzenleyicisinden çıkmak ve Excel çalışma sayfanıza dönmek için klavyenizde Alt + Q tuşlarına basın.
5. İşlevselliği kullanmadan önce Tasarım Modu özelliğini Geliştirici sekmesinden kapatmayı unutmayın. Bu adım, VBA makrosunu tetikleyebilmesi için onay kutusu denetimini etkinleştirir.

6. Artık eklediğiniz onay kutusuna tıklayın. Taşımak istediğiniz satırın ilk hücresini mi yoksa Tüm satır’ı mı seçmek istediğinizi soran bir Kutools for Excel iletişim kutusu açılacaktır. Seçiminizi yaptıktan sonra Tamam düğmesine tıklayın. Belirtilen satır, VBA kodunuzda tanımlandığı gibi anında hedef çalışma sayfasına taşınacaktır. Ekran görüntüsüne bakın:

Excel Formülü – Taşınacak satırları işaretleme ve filtreleme
Formül tabanlı bir çözüm, ilişkili onay kutusu işaretlendiğinde hangi satırların taşınması gerektiğini hızlıca belirlemenize yardımcı olur. Bu yöntem özellikle onay kutularının yardımcı sütunlara bağlandığı veri giriş tablolarında oldukça pratiktir. İşaretlenen bu satırlar daha sonra filtrelenip elle başka bir sayfaya yapıştırılabilir. Bu yöntem VBA gerektirmez ve katı otomasyona gerek duyulmadığı ya da makro kullanımının kısıtlandığı ortamlar için idealdir.
B2 ile B100 aralığında onay kutularınızın olduğunu ve C2 ile C100 hücrelerine bağlandığını, veri satırlarınızın ise A2:B100 aralığında olduğunu varsayalım. İşaretlenen satırları belirlemek için you can use a helper column (for example, column D) formülü kullanın:
1. D2 hücresine aşağıdaki formülü girin:
=IF(C2=TRUE, "Move", "") 2. Formülü onaylamak için Enter tuşuna basın, ardından tüm veri satırlarını kapsayacak şekilde (örneğin D2 ila D100) aşağı doğru kopyalayın. Bunu, hücrenin sağ alt köşesindeki doldurma tutamacını sürükleyerek veya çift tıklayarak yapabilirsiniz.
3. Artık D sütununu yalnızca "Taşı" içeren satırları gösterecek şekilde filtreleyebilir, ardından görünür (filtrelenmiş) satırları seçip hedef çalışma sayfanıza kopyalamak için Ctrl+C ve Ctrl+V kısayollarını kullanabilirsiniz.
İpucu: Onay kutularınız hücre değerlerine bağlı değilse, her birine sağ tıklayıp Hücre Bağlantısı özelliğini ayarlayın. Böylece onaylamak veya onayı kaldırmak, ilgili hücreyi DOĞRU veya YANLIŞ olarak güncelleyecek ve formül beklendiği gibi çalışacaktır.
Avantajlar: Makroya gerek yoktur ve paylaşılan dosyalarda sorunsuz çalışır.Dezavantajlar: İşaretlenen satırları taşımak için bazı manuel adımlar gereklidir.
İlgili makaleler:
- Tüm satır'yi Excel'de hücre değerine göre başka bir sayfaya nasıl taşıyabilirim?
- Excel'de hücre değerine göre Tüm satır'yi Geçerli Çalışma Sayfası'nin en altına nasıl taşıyabilirim?
En İyi Office Üretkenlik Araçları
Excel becerilerinizi Kutools for Excel ile geliştirin ve verimlilikte hiç yaşamadığınız bir deneyim yaşayın.Kutools for Excel, üretkenliği artırmak ve Zamanı Kaydet için 300’den fazla gelişmiş özelliğe sahiptir.İhtiyacınız olan özelliği hemen edinmek için buraya tıklayın…
Office Tab, Office uygulamalarına sekmeli bir arayüz kazandırarak işlerinizi çok daha kolay hale getirir.
- Word, Excel, PowerPoint, Publisher, Access, Visio ve Project'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Belgeleri yeni pencerelerde değil, aynı pencerenin yeni sekmelerinde açıp oluşturun.
- Günlük üretkenliğinizi %50 artırır ve her gün yüzlerce fare tıklamasından tasarruf etmenizi sağlar!
Tüm Kutools eklentileri — tek bir kurulum dosyasında!
Kutools for Office paketi, Excel, Word, Outlook ve PowerPoint eklentilerini ve ayrıca Office Tab Pro’yu içeren kapsamlı bir çözümdür; Office uygulamalarında çalışan ekipler için idealdir.
- Hepsi bir arada paket— Excel, Word, Outlook ve PowerPoint eklentileri + Office Tab Pro
- Tek kurulum, tek lisans— birkaç dakikada hazır (MSI uyumlu)
- Birlikte daha iyi çalışır— Office uygulamalarında akıcı üretkenlik
- 30 günlük tam özellikli deneme— kayıt gerekmez, kredi kartı gerekmez
- En iyi fiyat performans— ayrı ayrı eklenti satın almaya göre tasarruf sağlar