• DİKKAT

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

Karışık verileri sıralama

  • Konbuyu başlatan Konbuyu başlatan izcik
  • Başlangıç tarihi Başlangıç tarihi
Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
http://img41.imageshack.us/img41/5848/adszmpa.jpg

Merhabalar.. Resimde görüldüğü gibi A1 hücresinden A6 hücresine kadar 6 adet isim yazılı..

B1 hücresinden B6 hücresine kadar da 6 adet aynı isimler yazılı fakat sıralamaları A sütunu ile B sütunu aynı değil: karışık

A sütunundaki isimler ile B sütununda birbirinin aynı olan isimleri, (bunlar isim değil de rakam da olabilir) aynı olan isimler yanyana gelecek şekilde sıralamaya nasıl sokabilirim.

yani A sütununda isimler

ahmet
mehmet
hasan
zeynep
kamil
ayşe

olarak yazdığı için

B sütunundaki isimler de A sütunundaki birbiriyle aynı olan isimlerin yanın gelecek
ve
ahmet
mehmet
hasan
zeynep
kamil
ayşe

olarak düzelecek..

Nasıl yapabilirim bunu excelde ? Şimdiden teşekkür ederim.
 
Merhaba

Basitçe şöyle bir şey yapabilirsiniz

önce A1:A6 aralığını seçin standart araç çubuğundaki (A-Z) sıralama butonuna tıklayın, "Geçerli seçime devam et" / "Sırala"

aynı işlemi B1:B6 aralığını da seçerek tekrarlayın, her iki sütundaki verilerde aynı olduğu için , ve artan olarak alfabetik sıralanacağından aynı verileriniz yan yana gelecektir.
 
Merhaba,

Kod:
Sub Sırala()
    Columns("A:A").Sort Key1:=Range("A1"), Order1:=xlAscending
    Columns("B:B").Sort Key1:=Range("B1"), Order1:=xlAscending
    
End Sub

Bu şekilde denermisiniz..

.
 
Çok teşekkür ederim Gökhan Polat. Fakat eksik bilgi verdim galiba. Şöyle ki:
diyelimki yanyana iki sütunda 1000 satır isim var ve bu yanyana iki sütunun satırlarındaki karışık isimlerden sadece (örnek) 30 adedi birbiri ile aynı.. Geri kalan 970 adedi farklı verilerden oluşuyor. Bundan dolayı normal basit şekilde dizme yaptığımızda bunlar aynı sıraya gelmiyor. Normal kendi içlerinde diziliyorlar.

Bu şekilde, aynı olan isim veya verileri nasıl yanyana getirebiliriz?

Değerli espiyonajl maalesef kodları kullanmayı hiç bilmiyorum. En kısa zamanda öğrenmek ve uygulamak istiyorum. Bana kod kullanmayı öğretir misiniz?
 
Son düzenleme:
Dosya Ekledim

Bir örnek dosyası hazırladım. Ve nasıl dizersem bu isimleri yanyana alırım.

Sütunlardaki veriler birbiriyle tamamen aynı olmadıkça yanyana gelmiyor normal sıralama ile..
 

Ekli dosyalar

Dosyanız ekte.
Butona basınız.:cool:
Kod:
Sub esitle()
Dim i As Long, x As Variant, k As Range
Application.ScreenUpdating = False
For i = 1 To Cells(65536, "A").End(xlUp).Row
    Set k = Range("B:B").Find(Cells(i, "A").Value, , xlValues, xlWhole)
    If Not k Is Nothing Then
        x = Cells(i, "B").Value
        Cells(i, "B").Value = k.Value
        Range(k.Address).Value = x
    End If
Next i
Application.ScreenUpdating = True
MsgBox "İşlem tamamlandı.."
    
End Sub
 

Ekli dosyalar

Helal olsun :) Harika ! Söyleyecek kelime bulamıyorum.. Yıllardır internette sadece vakit kaybetmişim .. İlgi alaka hızlı cevap..

Teşekkür ederim her şey için.

Bir de şu kod denen şeyler nasıl kullanılıyor ilk fırsatta öğreneceğim. Yalnız bir minik sorum var. Gönderdiğiniz dosyada 1. satırın hemen altında bir çizgi oluşuyor ya; o çizgiyi kaldırıp tekrar oluşturmanız mümkün mü? Eğer olmuyorsa hiç sorun değil. Sadece belki oluyordur diye yazdım :)
 
Helal olsun :) Harika ! Söyleyecek kelime bulamıyorum.. Yıllardır internette sadece vakit kaybetmişim .. İlgi alaka hızlı cevap..

Teşekkür ederim her şey için.

Bir de şu kod denen şeyler nasıl kullanılıyor ilk fırsatta öğreneceğim. Yalnız bir minik sorum var. Gönderdiğiniz dosyada 1. satırın hemen altında bir çizgi oluşuyor ya; o çizgiyi kaldırıp tekrar oluşturmanız mümkün mü? Eğer olmuyorsa hiç sorun değil. Sadece belki oluyordur diye yazdım :)
Çizgi oluşmasının sebebi ilk satırı dondurmamdan kaynaklanıyor.İlk satır buton koyduğum için eğer sayfayı aşağı doğru kaydırırsanız butonda kaybolacaktır.Buton hep üstte kalsın diye ilk satırı dondurdum.
İterseniz Pencere==>Bölmeleri çöz basarak iptal edebilirsiniz.:cool:
 
Sorum şu: Dün göndermiş olduğunuz dosya mükemmel: A sütununun yanındaki B sütununu sıralıyor. Fakat B sütununun yanındaki C sütununa etki etmiyor. Böyle bir şey mümkün olabilir mi? Yani B sütununu sıralaması A ya göre değiştiğinde C sütununun da sıralamasının değişmesini istiyorum (B ye göre). Yani B sütunu A ya göre değişiyor, C sütunu da B ye göre değişecek. Böyle bir liste hazırlayabilir misiniz? Şimdiden teşekkürler
 
Sorum şu: Dün göndermiş olduğunuz dosya mükemmel: A sütununun yanındaki B sütununu sıralıyor. Fakat B sütununun yanındaki C sütununa etki etmiyor. Böyle bir şey mümkün olabilir mi? Yani B sütununu sıralaması A ya göre değiştiğinde C sütununun da sıralamasının değişmesini istiyorum (B ye göre). Yani B sütunu A ya göre değişiyor, C sütunu da B ye göre değişecek. Böyle bir liste hazırlayabilir misiniz? Şimdiden teşekkürler
Örnek dosyayı yollayınız.:cool:
 
Dosyayı hazırladım

Hazırladığım dosyada görüldüğü üzere değerli Evren Gizlen'in yapmış olduğu makro uygulaması kusursuz çalışıyor. Örnek komut çalıştırıldığında B sütunundaki 20. satırdaki AHMET kelimesi , B1 olarak yer değiştiriyor. Fakat C20 hücresindeki V harfi de C1 olarak yer değiştirmesi gerekirken aynı yerinde kalıyor bunu çözebilir misiniz?
 

Ekli dosyalar

Hazırladığım dosyada görüldüğü üzere değerli Evren Gizlen'in yapmış olduğu makro uygulaması kusursuz çalışıyor. Örnek komut çalıştırıldığında B sütunundaki 20. satırdaki AHMET kelimesi , B1 olarak yer değiştiriyor. Fakat C20 hücresindeki V harfi de C1 olarak yer değiştirmesi gerekirken aynı yerinde kalıyor bunu çözebilir misiniz?
C20deki V harfi niye C1 ile yer değiştirecek anlayamadım.B1 hücresinde eşleştiği bir değer yok ki C1 e taşınsın.:cool:B1de AHMET var.C20deki V C1 e taşınırsa AHMET-V eşeleşmiş olur.Biz kodu böyle yapmadığımız için eşeleşmez.:cool:
 
Haklısınız eşleştiği bir değer yok. Eksik bilgi verdim. Ben tekstil işi ile uğraşıyorum. Ve 1000 in üzerindeki ürün çeşitlerinin stok kodu, fiyatları (dolar tl maliyet vs..), stok adetleri, ürünlerin isimleri ve daha bir sürü veri ile excelde uğraşıyorum.
B sütununu kendi stok listem olarak düşünecek olursak, yanında "kendi oluşturduğum ve bana gerekli olan (yani C sütunu) SIRALAMA LİSTEMİ'nde (1-2-3-...)" Bye bağlı olarak değişmesini isterim. Yani C deki V harfini Ahmet kelimesi ile hiç kıyaslamayın.

B , A ya göre gayet muntazam diziliyor. Dosya görevini eksiksiz yapıyor. Fakat C nin de "B" ye göre dizilmesi benim için önem taşıyor. C Bye göre dizilmeli.. A ya göre değil..

C , B ye göre dizilmeli derken eşleşme anlamında değil sadece B deki veri nereye giderse, C de onun yanına gidecek (B nin) Hepsi bu :)

Saygılarımla.. Eğer anlaşılmayan bir şey olursa tekrar izah etmeye hazırım. :)
 
Haklısınız eşleştiği bir değer yok. Eksik bilgi verdim. Ben tekstil işi ile uğraşıyorum. Ve 1000 in üzerindeki ürün çeşitlerinin stok kodu, fiyatları (dolar tl maliyet vs..), stok adetleri, ürünlerin isimleri ve daha bir sürü veri ile excelde uğraşıyorum.
B sütununu kendi stok listem olarak düşünecek olursak yanında "kendi oluşturduğum ve bana gerekli olan SIRALAMA LİSTEMİ'nde (1-2-3-...)" Cye bağlı olarak değişmemesini isterim. Yani C deki V harfini Ahmet kelimesi ile hiç kıyaslamayın.

B , A ya göre gayet muntazam diziliyor. Dosya görevini eksiksiz yapıyor. Fakat C nin de "B" ye göre dizilmesi benim için önem taşıyor. C Bye göre dizilmeli.. A ya göre değil..

Saygılarımla.. Eğer anlaşılmayan bir şey olursa tekrar izah etmeye hazırım. :)
Buradan bir şey anlamadım ama ilk yaptığım kodlardaki mantığa göre yaptığım kodlar ve dosya ektedir.:cool:
Kod:
Sub esitle()
Dim i As Long, x As Variant, k As Range, adr As String
Application.ScreenUpdating = False
For t = 1 To 2
For i = 1 To Cells(65536, t).End(xlUp).Row
    adr = Range(Cells(1, t + 1), Cells(65536, t + 1)).Address
    Set k = Range(adr).Find(Cells(i, t).Value, , xlValues, xlWhole)
    If Not k Is Nothing Then
        x = Cells(i, t + 1).Value
        Cells(i, t + 1).Value = k.Value
        Range(k.Address).Value = x
    End If
Next i
Next t
Application.ScreenUpdating = True
MsgBox "İşlem tamamlandı.."
    
End Sub
 

Ekli dosyalar

Hemen dosyayı indiriyorum Bütün olay şuydu: Haklısınız mesaj ile ifade etmek biraz zor oluyor.

B sütunu A ya göre sıralanıyor ya; (eşleşme komutu)
C de B ye göre sıralanacak. Yani bildiğiniz sıralama.. B deki veri nereye gidiyorsa , C de onun yanına gidecek. :)
 
Hemen dosyayı indiriyorum Bütün olay şuydu: Haklısınız mesaj ile ifade etmek biraz zor oluyor.

B sütunu A ya göre sıralanıyor ya; (eşleşme komutu)
C de B ye göre sıralanacak. Yani bildiğiniz sıralama.. B deki veri nereye gidiyorsa , C de onun yanına gidecek. :)
Ama sizin yolladığınız örnek dosyada b sütunu ile eşleşen hiç bir veri yok.Ben kodu yapıp çalıştırdığımda nasıl kontrol edicem.Siz örnek dosya yolluyorsunuz ya bunu düşünmelisiniz.Yoksa niye örnek dosya yolluyorsunuz?:cool:
 
Bu ilk gönderdiğinizin sanırım aynısı olmuş :)

B deki veri gayet güzel A nın yanına gidiveriyor ya (eşleşiyor)

C deki veri de B nereye giderse onun yanına gidecek; yani B ye yapışık olacak. (yani eşleşme değil bildiğiniz normal sıralama)

B 20 deki Ahmet kelimesi , B 1 e gidiyor ya, C 20 deki V harfi de ( B 20 nin yanında yer aldığı için) gideceği yer C 1 olacak..
 
Bu ilk gönderdiğinizin sanırım aynısı olmuş :)

B deki veri gayet güzel A nın yanına gidiveriyor ya (eşleşiyor)

C deki veri de B nereye giderse onun yanına gidecek; yani B ye yapışık olacak. (yani eşleşme değil bildiğiniz normal sıralama)

B 20 deki Ahmet kelimesi , B 1 e gidiyor ya, C 20 deki V harfi de ( B 20 nin yanında yer aldığı için) gideceği yer C 1 olacak..
Tamam şimdi anladım galiba .Dubakayi öyle yapayım.:D
 
Geri
Üst