• DİKKAT

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

Sütundaki Satırları Kaydırıp Eşitlemek

Katılım
1 Nisan 2010
Mesajlar
7
Excel Vers. ve Dili
2010
Merhaba, daha önce buradan bir yardım almıştım @asi_kral_1967 sayesinde 4-5 aydır işlerimi görüyordum.

Elimdeki Ekteki gibi bir makro var. Bu exceldeki C Sütunundaki bütün veriler A sütununda mevcut. C sütunundaki veriler arasında boşluklar var.

Verilerimin tümü (A sütunu) 119000 satır içeriyor. Eşleşmesi gerekenler ise (C sütunu) 117000 satır.

Ekteki makro A ve C sütunları tamamen aynıysa bir problem olmadan çalışıyor ancak şu an (Bu, yıldızların katalog verileri) C sütununda bazı sayılar 0.000001 değer daha fazla.

Örneğin A Sütununda Hip 59.733543
C Sütununda Hip 59.733542

Bu durum verileri aldığım yerdeki hassaslık yuvarlamalarından kaynaklanıyor ve değiştiremiyorum.

Bu şekilde olunca eşleşmiyor ve tıkanıyor.

Ekteki örnekte C20 Satırını 0.000001 düşürerek Hip 59.855864 yaptım. O ve Onun altında kalan veriler en aşağıya gidiyor. Eğer bu sayıyı A24 satırındaki hücreyle eşitleyip makroyu çalıştırırsanız problem olmuyor ancak bendeki verilerin bazıları tam olarak aynı sayı değil ama aynı yıldızı ifade ediyor. Bu sıralama kriterine koşul koyabilir miyiz ? Eğer daha kolay olacaksa Başındaki Hip leri de kaldırabilirim. Sadece sayı olur. Bunun gibi bazı katalogları sıralamam gerekiyor, sadece bu değil :(


Yardım eden olursa çok sevinirim
 

Ekli dosyalar

Sorunum hala devam ediyor. Mevcut makro geliştirilerek böyle bir şey yapılabilir mi ?
 
Merhaba,

Nasıl karşılaştırma yapılacağını anlamadım ama, aşağıdaki kodlar C sütunundaki değeri A sütununda arar.

A sütununda bulursa bulduğu hücreyi renklendirir. Bulamazsa C sütunundaki okuduğu değeri renklendirir.

Bir deneyiniz işinize yararsa ne yapmak istediğinize göre düzenlenebilir.
C sütunundaki değerin 1 eksik haliyle arama yapar.

Örneğin değer Hip 59.764342 ise aranan değer olarak kırmızı ile belirtilen kısmını kullandım.


Kod:
Sub Karsilastir()
    
    Dim i   As Long
    Dim c   As Range
    Dim Ara As String
    
    Application.ScreenUpdating = False
    Range(Range("A2"), Range("A2").End(xlDown)).Interior.ColorIndex = xlNone
    
    For i = 2 To Cells(Rows.Count, "C").End(3).Row
        Ara = Left(Cells(i, "C"), Len(Cells(i, "C")) - 1)
        Set c = Range("A:A").Find(Ara, LookIn:=xlValues)
        If Not c Is Nothing Then
            c.Interior.ColorIndex = 34
        Else
            Cells(i, "C").Interior.ColorIndex = 3
        End If
    Next i
    
    Application.ScreenUpdating = True
    
End Sub
 
Cevabınız için çok teşekkürler. A Sütunundaki veriler bir yıldız kataloğuna ait ve başka veriler de içeriyor. C Sütunundaki veriler ve yanındakiler ise başka bir yıldız kataloğuna ait.

Bu iki katalog yanyana birleştirilince (aslında A ve C sütununda yer alan her bir Hip ..... bir yıldızı temsil ediyor) ikisinin de farklı-önemli özelliklerinin oluşturduğu daha büyük bir katalog ortaya çıkıyor ve bunlarla grafik çizdirip yorum yapıyorum. Bu yüzden bana toplu hali gerekli.

Örnekteki makroyu çalıştırırsanız eğer C20 satırına kadar eşleştiğini fark edersiniz. Ben hepsi eşleşsin istiyorum. C20'deki Hip 59.855864'i 0.000001 değer yükseltip Hip 59.855865 yapıp makroyu çalıştırırsanız eşleşiyor tamamen. Yapmak istediğim böyle bişey. 0.000001 değer farklılığını göz ardı etsin istiyorum eşleşsin diye kabul etsin yani. Bu mümkün mü ?
 
Geri
Üst