• DİKKAT

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

tarihe göre tablodan veri listeleme

Katılım
9 Şubat 2006
Mesajlar
31
Excel Vers. ve Dili
Microsoft® Excel® for Microsoft 365 MSO (Version 2202 Build 16.0.14931.20648) 32-bit
İngilizce
merhaba yapmak istediğimi ekli tabloda örnekledim. şimdiden çok teşekkürler.
 

Ekli dosyalar

Merhaba,

Bu işlemi fonksiyonla değil makro ile yapmanızı tavsiye ederim.
Eki inceleyin.

Kod:
Sub Bul_Aktar()
 
    Dim c As Range, sat As Long, Adr As Variant, S1 As Worksheet
 
    Set S1 = Sheets("Sayfa1")
 
    Application.ScreenUpdating = False
 
    Sheets("Sayfa2").Select
    Range("B2:C" & Rows.Count).ClearContents
 
    sat = 2
    With S1.Cells
      Set c = .Find(Range("A2"), , xlValues, xlWhole)
        If Not c Is Nothing Then
          Adr = c.Address
            Do
                [COLOR=red]Cells(sat, "B") = S1.Cells(c.Row, c.Column).Offset(0, -1)[/COLOR]
                Cells(sat, "C") = S1.Cells(c.Row, c.Column).Offset(0, 1)
                sat = sat + 1
 
              Set c = .FindNext(c)
            Loop While Not c Is Nothing And c.Address <> Adr
        End If
    End With
 
    Application.ScreenUpdating = True
 
 End Sub
.
 

Ekli dosyalar

yardımınız için çok teşekkür ederim. fonksiyonla yapmak mümkün değilmidir. öncelikle fonksiyonu tercih ederim aslına bakarsanız.
 
arkadaşlar yardım edebilecek kimse yok mu_?
 
Sayın Ömer, dosyanızı inceledim ve şunu fark ettim: Sayın özgür'ün dosyasında her satır bir firma için ayrılmış. O satırda firma adı en başta yer alıyor, diğer sütunlarda ise önce tarih sonra da yapılan işlem yer alıyor.

Sizin çözümünüzde maalesef tam istenen gerçekleşmemiş. Örneğin 2 şubatta x firması aranmış, y firmasına sunum, z firmasına ise teslimat yapılmış; sizin çözümünüzde x doğru ama y için firma adı ziyaret edildi; z için de firma adı sipariş verildi olarak gösteriliyor. Makronuz firma adını sadece ilk sütundan alacak şekilde ayarlanmalı; ilgili tarih o satırda varsa önce A sütunundan firma ismini, sonra da tarihin sağındaki hücreden yapılan işlemi getirmeli.

Maalesef kodlama bilmediğim için ben düzenleyemiyorum.

Sayın özgür, tablonuz karışık olduğundan fonksiyonla yapılması mümkün değil diye düşünüyorum. Sayın moderatör kodlarını düzenlerse en ideal çözüm olur bence.
 
Sayın ozgur1234,

Yapmak mümkün tabiki fakat sütun sayısı ve satır sayısı artıkça dosyada çalışamayacak kadar yavaşlamalar olur. Bu yüzden tavsiye etmemiştim.

-------------------------------------------------------------------

Sayın YUSUF44,

Haklısınız dikkat etmemiştim. #2 numaralı mesajda kırmızı işaretli bölümün yerine aşağıdaki kod yazılırsa istenen olacaktır.

Cells(sat, "B") = S1.Cells(c.Row, "A")

Son hali ektedir.

.
 

Ekli dosyalar

selamlar

arkadaşlar ekteki dosya konusunda yardımlarınızı rica ediyorum. tşkler
 

Ekli dosyalar

Geri
Üst