Çözüldü Ara Yatay Yaz,

gicimi

Altın Üye
Katılım
3 Şubat 2008
Mesajlar
593
Excel Vers. ve Dili
Office 2016 Eng. 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2024
Selamlar,

Stok No aynı olan verileri tarih sırasına göre yatay yazmasını istiyorum. Bu işlemi nasıl yapabilirim.

Resimdeki gibi arama yapıp yanyana yazmalı.

Ekran Alıntısı.JPG
 
Katılım
6 Mart 2005
Mesajlar
6,233
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
F2 Hücresine kopyalayınız.Aşağı doğru çoğaltınız.Dizi formülü
Kod:
=EĞERHATA(İNDİS($A$2:$A$200;KAÇINCI(;EĞER($A$2:$A$200<>"";EĞERSAY($F$1:$F1;$A$2:$A$200));0));"")
G2 hücresine kopyalayınız.Sağa ve aşağı doğru çoğaltınız.Dizi formülü.
Kod:
=EĞERHATA(İNDİS($B$1:$B$200;KÜÇÜK(EĞER($A$2:$A$200=$F2;SATIR($A$2:$A$200));SÜTUN(A$1)));"")
Dizi formülü uygulaması için bakınız.
https://www.excelgurusu.com/dizi-array-formulleri/
 
Son düzenleme:

gicimi

Altın Üye
Katılım
3 Şubat 2008
Mesajlar
593
Excel Vers. ve Dili
Office 2016 Eng. 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2024
Sayın @çıtır teşekkür ederim. Elinize sağlık. (y)
 

gicimi

Altın Üye
Katılım
3 Şubat 2008
Mesajlar
593
Excel Vers. ve Dili
Office 2016 Eng. 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2024
Makro ile nasıl yapılabilir.

Sayfa2 ye yaklaşık satır sayısı 5.000 adet olduğunu varsayarsak.
 

Ziynettin

Destek Ekibi
Destek Ekibi
Katılım
18 Nisan 2008
Mesajlar
1,106
Excel Vers. ve Dili
office2010
Kod:
Sub test()
Dim a(), b(), d1 As Object, d2 As Object, d3 As Object
Dim i As Long, sut As Integer, krt As String
    Set d1 = CreateObject("Scripting.Dictionary")
    Set d2 = CreateObject("Scripting.Dictionary")
    Set d3 = CreateObject("Scripting.Dictionary")
    a = Range("A2:B" & [A65000].End(xlUp).Row)
        For i = 1 To UBound(a)
            krt = a(i, 1)
            If Not d1.exists(krt) Then
                d1(krt) = d1.Count + 1
            End If
            d2(krt) = d2(krt) + 1
        Next i
    sut = Application.Max(d2.items)
    ReDim b(1 To d1.Count, 1 To sut + 1)
        For i = 1 To UBound(a)
            krt = a(i, 1)
            d3(krt) = d3(krt) + 1
            b(d1(krt), 1) = krt
            b(d1(krt), d3(krt) + 1) = a(i, 2)
        Next i
    [F2].Resize(d1.Count, sut + 1) = b
MsgBox "İşlem tamam.", vbInformation
End Sub
 

gicimi

Altın Üye
Katılım
3 Şubat 2008
Mesajlar
593
Excel Vers. ve Dili
Office 2016 Eng. 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2024
@Ziynettin hocam parmaklarınıza sağlık teşekkür ederim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,314
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Tarihlerin tekrar etme durumu var mı? Varsa tekrar eden tarihlerde listelenecek mi?
 

gicimi

Altın Üye
Katılım
3 Şubat 2008
Mesajlar
593
Excel Vers. ve Dili
Office 2016 Eng. 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2024
Merhaba @Korhan Ayhan Bey,
Tarihlerin tekrar etme ihtimali var. Evet listelenecek.
 
Son düzenleme:
Katılım
9 Haziran 2019
Mesajlar
221
Excel Vers. ve Dili
Office 2016 Eng.
@Ziynettin Bey bu işlemi aynı sayfada değilde Sayfa2 yapmak için kodları güncelleyebilir misiniz rica etsem.
 
Üst