aynı koda sahip verilerin sıralanması

Katılım
21 Nisan 2007
Mesajlar
36
Excel Vers. ve Dili
excel 2003 türkçe
merhaba,

ekteki dosyada sayfa2 de tüm bilgileri bulunan malları sayfa1'de giriş yaptığım türe göre getirtmeye çalışıyorum; find veya vlookup denedim her seferinde başarısız oldu. sadece ilk malı bulup getirdi diğerleri kaldı.

yapmaya çalıştığım tam olarak a2 hücresindeki türe göre butona bastığımda sayfa 2 deki o türdeki malların numara adı ve fiyat bilgilerini sayfa 1deki tabloya gelmesidir.

umarım çözüme kavuşturabiliriz.
 

Ekli dosyalar

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Dosyanız ekte.:cool:
Kod:
Sub aktar()
Dim k As Range, adr As String, adr1 As Range, adr2 As Range, sat As Long
Sheets("Sayfa1").Select
Range("B4:D65536").ClearContents
If Range("B1").Value = "" Then
    MsgBox "Arama Yapılamadı.." & vbLf & _
    "B1 hücresine Aranacak Ürünün Türünü giriniz!!", vbCritical, "UYARI"
    Exit Sub
End If
With Sheets("Sayfa2")
    Set k = .Range("A4:A65536").Find(Range("B1").Value, , xlValues, xlWhole, , xlNext)
    If Not k Is Nothing Then
        Application.ScreenUpdating = False
        adr = k.Address
        sat = 4
        Do
            Set adr1 = Range(Cells(sat, "B"), Cells(sat, "D"))
            Set adr2 = .Range(.Cells(k.Row, "B"), .Cells(k.Row, "D"))
            adr1.Value = adr2.Value
            Set k = .Range("A4:A65536").FindNext(k)
            sat = sat + 1
        Loop While adr <> k.Address And Not k Is Nothing
        Application.ScreenUpdating = True
        Set adr1 = Nothing
        Set adr2 = Nothing
        MsgBox "Türe Uyan Veiler Sayfa2'den Sayfa1'e Akatarıldı..!!", _
        vbOKOnly + vbInformation, Application.UserName
    End If
End With
 

Ekli dosyalar

Katılım
21 Nisan 2007
Mesajlar
36
Excel Vers. ve Dili
excel 2003 türkçe
teşekkürler, gerçekten çok iyi çalışıyor. benim yapmya çalıştığımla burdaki kodların alakası yok. hatalarım baya fazlaymış :)
 
Katılım
21 Nisan 2007
Mesajlar
36
Excel Vers. ve Dili
excel 2003 türkçe
tekrardan merhaba,

programın çalışmasınını güzel olduğunu belirttikten sonra kodları incelemeye koyuldum ve bazı parçaların nasıl çalıştığını anlamadım. Açıklayabilecek olan varsa müthiş olur.

adr = k.address satırı ile adr'ye bir şey atamışız ama adress neyi ifade ediyor burada yada farklı bir şey mi :)

.Range(.Cells....) gibi yazdığımız kodlarda . ile başlamak neyi ifade ediyor?

adr <> k.adress kısmını da adressi öğrendikten sonra çıkartabilirim sanıyorum

şimdiden teşekkürler
 
Üst