• DİKKAT

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

Grup bul

Katılım
14 Haziran 2006
Mesajlar
575
Sayfa1'de bir tablo mevcut bu tabloda veriler gruplandırılmıştır.yapmak istediğim E16 hücresinden başlayan veriler gelmektedir.Gelen veriler arasında üç satır dört satır veya daha fazla boş satırlar olabiliyor.Gelen verilerin tablodaki grup karşılığını macro ile buldurabilirmiyiz.
 

Ekli dosyalar

Merhaba,

H5:N11 arasını mı doldurmak istiyorsuuz yoksa F16:F&son aralığını mı doldurmak istiyorsunuz?
 
E16 dan başlayan gelen veriler var.Bu verileri tablo ile karşılaştırıp F16 dan aşağı doğru dolduracak.
 
B613456 verisi tabloda x lere göre A1-A2-A5 hücrelerinde var bu durumda siz F16 ya sadece A1 yazmışsınız bu şekilde sadece ilk gördüğünümü yazacak yoksa birleştirerek mi yazacak?

Sorunuzu daha detaylı açıklarmısınız.
 
İstediğiniz bu mu?

Kod:
Sub Grupla()
 
    Dim sat As Long, i As Integer
 
    Application.ScreenUpdating = False
    Range("E16:F" & Rows.Count).ClearContents
 
    sat = 16
    For i = 8 To 14
        Range("E5:E11").Copy Range("E" & sat)
        Range(Cells(5, i), Cells(11, i)).Copy Range("F" & sat)
        Range("F" & sat, "F" & sat + 7).Replace "x", Cells(3, i)
        sat = sat + 8
    Next i
 
    Application.ScreenUpdating = True
 
End Sub
.
 
Ömer bey kod çalışıyor.Ançak kod tablodan veri kopyalamayaçak o verileri ben giriyorum E15 den sonraki verileri tablo ile karşılaştıracak yazdığım veriler karışık oluyor amacımız hangi grupta onu görmek girdiğim veride sadece bir grup çıkıyor onu bulmak.Öz veriniz için teşekkürler.
 
Nadir bey,

Sorunuzu anlamıyorum maalesef. Dosya eklemişsiniz fakat dosyada sadece şekillerle açıklamaya çalışmışsınız, açıklama yapmamışsınız.

Soru içeriğini biliyormuşuz gibi değil hiç bilmiyormuşuz gibi açıklarsanız sevinirim.

Ayrıca 4. mesajda soru sormuştum onu da yanıtsız bıraktınız.

.
 
1-Altdaki Veriler tablosundaki listede dönecek
2-Yukarıdaki tabloda eşleşen kaydı bulacak
3-"X" ile işaretli olan satırdaki veri numarasını alttaki veriler tablosuyla karşılaştıracak
4-Tüm "X" li alanlar aşağıdaki veriler tablosunun numaralarıyla eşleşiyorsa grup numarasını verecek
5-Örnek olarak A2 verisine karşılık "1" grubu gelecek.

4.Mesaj daki sorunuza cevap olarak ta ; sadece "X" li alanların eşleştiği sütunun grup numarasını verecek.Onun için ekte tabloyu gönderiyorum.

Yardımınız için teşekkürler.
 

Ekli dosyalar

Merhaba,

Israrla Ömer beyin sorusunu yanıtlamıyorsunuz. Bende sizin sorunuzu inceledim ve inanın Ömer bey gibi uğraşmak istemedim.

Soru net değil. Örneğin son dosyanızdan gidersek :

Veri numarası A2 olan 3 ayrı grupta görülüyor (1-2 ve 5)
Siz örneğinizde A2 için Grubuna 1 demişsiniz, diğer 2 ve 5. grupları yazdırmak gerekmiyor mu?

Ömer beyin de ısrarla sorduğu soru bu. Siz hala takıldığınız gibi anlatmaya çalışıyorsunuz :)

Açıklayıcı olması açısından sordum.
 
Merhaba
Soru şu
Bir tablo var veriler ve grup adı var
Benim sorgulamak istediğim veriler E16 dan başlıyor.E16 dan aşağıya doğru verilerin içinde tablodaki X ile işaretli olan gruptan bir grup var bu grubu bulmak.Bunu bulmak içinde H,I,J,K,L,M,N Sutunlarını tarayacak.Tabloda sutun olarak baktığınızda grupları göreceksiniz.Ömer beyden özür dilerim anlatmaya çalışıyorum.
 
Sanırım biz Türkçe konuşmuyoruz.

Aradığınız değer birden fazla grupta olursa hangisini göstermesi gerekiyor diye soruyoruz, siz halâ aynı şeyi söylüyorsunuz.

Çünkü verdiğiniz örnekte değer birden fazla grupta görülüyor.

Neyse.......
 
Son bir açıklama
Evet birden fazla Şöyle bir tabloya bakın bir daha sutun sutun her şey belli.verilerim hangi sutuna karşılık geliyorsa o .Herkese teşekkürler.
 
Merhaba,

Kesin olarak eminim ki anlaşamayacağız ama yinede şansımı denemek istedim.

Dosyayı inceleyiniz.

E16 dan sonra yazacağınız her değeri E5:E11 (bu değerlerin de bu kadar olacağını tahmin etmiyorum ama.....) aralığında arar ve bulursa TÜM GRUPLARI (Üzerine basarak yazıyorum) yanındaki F sütununa yazar.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, [E:E]) Is Nothing Then Exit Sub
    If Target.Row < 16 Then Exit Sub
    
    Dim c   As Range, _
        Sat As Integer, _
        Kol As Integer
        
    Target.Offset(0, 1) = ""
    
    Set c = Range("E4:E11").Find(Target.Value, LookIn:=xlValues)
    If Not c Is Nothing Then
        Sat = c.Row
        Kol = 5
        Do
            Kol = Cells(Sat, Kol).End(xlToRight).Column
            If Kol < Columns.Count Then
                If Len(Target.Offset(0, 1)) > 0 Then
                    Target.Offset(0, 1) = Target.Offset(0, 1) & " - " & Cells(3, Kol)
                Else
                    Target.Offset(0, 1) = Cells(3, Kol)
                End If
            End If
        Loop While Kol < Columns.Count
    Else
         MsgBox "Aradığınız Değer Bulunamadı"
    End If
End Sub
 

Ekli dosyalar

Gerçekten size ne teşekkür etsem azdır çünkü zoru başarıyorsunuz.Cevabım bu değil.

Bu laftan pek birşey anladığımı söyleyemem. Sonuç olarak çözüm doğru mu değil mi?

Konuyu inceleyen arkadaşlara yardımcı olsun diye açık açık yazarsanız sevinirim.
 
Merhaba,

Nadir bey sabahtan beri onu soruyoruz işte, tüm grupları mı yazacak yoksa ilk grubu mu diye.

29034857902384759038 mesajdan sonra derdinizi anlatabildiniz.

Neyse gereksiz yere kafa patlatıp tüm grupları yazdırdım ben. İster kullanırsınız ister kullanmazsınız.
 
Geri
Üst