• DİKKAT

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

macro ile belirli kriterlere göre satır kopyalama

Katılım
29 Mayıs 2008
Mesajlar
21
Excel Vers. ve Dili
Office 365
Merhaba arkadaşlar,
Mümkün mü bilmiyorum, mümkünse ancak sizlerden cevap gelebilir.
Ekteki görüntü üzerinden konuşayım;

https://i.hizliresim.com/VMl7Zr.png


B sutunundaki kodları, C ve D sutunlarındaki değerlere göre arayıp, istenilen satırları olduğu gibi B veya C sayfasına atmak mümkün mü ?

Örnek olarak ;
B sutunundaki tekrarlayan kodlar içinde, D sutununda "Ori" olan ve C sutununda "İst" olan satırı alıp B sayfasına,
tekrarlayan kodlarda "Ori" hiç yoksa, D sutununda "B" olan ve C sutununda "İst" olan satırı alıp C sayfasına otomatik atmak mümkün mü?

Teşekkürler.
 
Tam olarak anlatmak istediğim:
B sütununda kodlar var, ve bu kodlar 4-5 satırda tekrar ediyor.
Yapmak istediğim; 4-5 satırın hiçbirinde de D sütununda o satırların karşısında "Ori" değeri yoksa,
D sütununda "b" ve C sütununda "İst" olan satırı C Sayfasına atacak.
Eğer 4-5 satırın herhangi birinin D sütunundaki karşısında "Ori" değer varsa; C sütununda "İst" değeri olan satırı B Sayfasına atacak.
Umarım yapılabilir.
Çok teşekkürler.
 
Hocam selam,
Ekte sizin yaptığınız çalışma üzerine a sayfasında bir iki değişiklik yaptım.
tr5,tr6 ve tr7 satırlarının içinde bir tane "Ori" olduğu için "b" değerinin hiç önemi kalmıyor.
Eğer herhangi birinde "Ori" varsa; sadece "Ori" + "İst" olanları B Sayfasına atmak istiyorum.

bu örnekte sadece tr8 kodlarının satırlarında "Ori" yok, o zaman "B" + "İst" değeri içeren satırı C Sayfasına atsın.
Bu şekilde mümkün olur mu?
Saygılar.

http://www.dosyaupload.com/4Ohf
 
Şimdi doğru anladım ama çözemiyorum malesef, çözümünü merakla bekliyoruz.
 
Sayfanızda tr ifadeleri sabit mi. Örneğin tr1 den tr20 ye kadar gidiyor şeklinde mi yoksa kod kısmı değişken mi? Sabit ise bu listeyi A sayfasında S1 den itibaren yazıp tekrar ekleyebilir misiniz?
 
Aşağıdaki kodları deneyin.
Kod:
Sub askm_Aktar()
Application.ScreenUpdating = False
Sheets("A").Range("Q1:Q65536").ClearContents
Sheets("b").Range("a2:e65536").ClearContents
Sheets("c").Range("a2:e65536").ClearContents
On Error Resume Next
Set s1 = ThisWorkbook.Worksheets("a")
Set s2 = ThisWorkbook.Worksheets("b")
Set s3 = ThisWorkbook.Worksheets("c")
Dim SonSat1, SonSat2 As Long
Dim Sayim As Integer
SonSat1 = s1.Range("A1").End(xlDown).Row
s1.Columns("B:B").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=s1.Range("Q1" _
        ), Unique:=True
        
SonSat2 = s1.Range("Q1").End(xlDown).Row
For k = 2 To SonSat2
    Aranan = s1.Cells(k, "Q")
    Sayim = WorksheetFunction.CountIfs(s1.Range("B2:B" & SonSat1), Aranan, Range("D2:D" & SonSat1), "Ori")
    If Sayim > 0 Then
    For i = 2 To SonSat1
        If s1.Cells(i, 2) = Aranan And s1.Cells(i, 4) = "Ori" Then
            SonSatirb = s2.Range("A65536").End(xlUp).Row + 1
            s2.Cells(SonSatirb, 1) = SonSatirb - 1
            s2.Cells(SonSatirb, 2) = s1.Cells(i, 1)
            s2.Cells(SonSatirb, 3) = s1.Cells(i, 2)
            s2.Cells(SonSatirb, 4) = s1.Cells(i, 3)
            s2.Cells(SonSatirb, 5) = s1.Cells(i, 4)
        End If
    Next i
    Else
    For j = 2 To SonSat1
        If s1.Cells(j, 2) = Aranan And s1.Cells(j, 4) <> "Ori" Then
            SonSatirc = s3.Range("A65536").End(xlUp).Row + 1
            s3.Cells(SonSatirc, 1) = SonSatirc - 1
            s3.Cells(SonSatirc, 2) = s1.Cells(j, 1)
            s3.Cells(SonSatirc, 3) = s1.Cells(j, 2)
            s3.Cells(SonSatirc, 4) = s1.Cells(j, 3)
            s3.Cells(SonSatirc, 5) = s1.Cells(j, 4)
        End If
    Next j
    End If
Application.ScreenUpdating = True

Next k
Sheets("A").Range("Q1:Q65536").ClearContents
MsgBox "İşlem Tamamlanmıştır.", vbOKOnly + vbInformation, "İŞLEM BİTTİ - ASKM "

End Sub
 
Hocam eline sağlık,
Seçim yaparken C sütunundan da "İst" olan değerleri kopyalamak istiyorum, diğer değerleri gözardı etmesi gerek.

Bu görselde kızmızı çerçeve ile seçtiklerim gibi : https://i.hizliresim.com/dG5o5Z.jpg

Çok teşekkürler.
 
Tr5 de bir tane ori mevcut. Açıklamanızda b yazanlara bir işlem yapmaya gerek yok yazmışsınız. Siz bu verilere göre bir örnek dosya hazırlayıp. B ve C sayfalarına aktarılacak verileri manuel girerek dosya yüklerseniz işimiz daha kolay olacak sanırım.
 
Geri
Üst