Satır ve Sutunları sıralama

Katılım
20 Ocak 2023
Mesajlar
84
Excel Vers. ve Dili
Başlangıç düzeyinde office 2007
aşağıdaki resimdeki tablosu şöyle değiştirmek istiyorum.
a sutunu / b sutunu / c sutunu
Sembol / Kurum / Lot
a1cap vakıf 2.000.000
a1cap ziraat 1.000.000 gibi. Şimdiden teşekkür ederim.

Sembol

kurum

lot

kurum

lot

kurum

lot

kurum

lot

kurum

lot

kurum

lot

kurum

lot

kurum

lot

kurum

lot

kurum

lot

A1CAP

Vakif

30443160​

A1 Capital

28358070​

Is Yatirim

22082880​

Deniz

20757060​

Ziraat

14705670​

Garanti

13182890​

Yapi Kredi

12689930​

Yatirim Fonlari

10410010​

Ak Yatirim

9294569​

Info

8101317​

A1YEN

Is Yatirim

5523792​

Ziraat

4664680​

Garanti

3971835​

Vakif

3180488​

A1 Capital

3159436​

Yapi Kredi

3070443​

Ak Yatirim

2912393​

Halk

1787713​

Deniz

1772072​

Oyak

1345876​

ACSEL

Garanti

3766499​

Is Yatirim

753419​

Vakif

599832​

Ziraat

563866​

Oyak

374918​

Ak Yatirim

324811​

 

293648​

Yapi Kredi

286865​

Deniz

276779​

Tacirler

206557​

ADEL

Alternatif

40310240​

TEB Yatirim

15441620​

Is Yatirim

11308670​

Garanti

6231073​

Ak Yatirim

5781172​

Yapi Kredi

5425972​

Denizbank

5114306​

Vakif

3923654​

Ziraat

3333228​

Deniz

2547519​

ADESE

Yatirim Fonlari

1067651000​

Tera

5.55E+08​

Citibank Yabanci

4.95E+08​

Is Yatirim

3.63E+08​

Yapi Kredi

2.56E+08​

Garanti

2.23E+08​

Vakif

1.85E+08​

Ziraat

1.81E+08​

Qnb Finans

1.8E+08​

Ak Yatirim

1.69E+08​

 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,738
Excel Vers. ve Dili
2021 Türkçe
Merhaba.
Aşağıdaki kodu bir modüle kopyalayıp çalıştırın.
Verilerin bulunduğu sayfa adı "Sayfa1"
Verilerin aktarılacağı sayfa adı "Sayfa2"
İsterseniz sayfa adlarını değiştirebilirsiniz. eğer değiştirirseniz kodlarda da ilgili yerleri değiştirmelisiniz.

Kod:
Sub KurumLotDuzenle()
    Dim Ws_1 As Worksheet
    Dim Ws_2 As Worksheet
    Dim SonSatir As Long
    Dim SonKolon As Long
    Dim Bak As Long
    Dim HedefSatir As Long
    Dim Sira As Long
    
    Set Ws_1 = ThisWorkbook.Worksheets("Sayfa1")
    Set Ws_2 = ThisWorkbook.Worksheets("Sayfa2")
    
    SonSatir = Ws_1.Cells(Ws_1.Rows.Count, 1).End(xlUp).Row
    SonKolon = Ws_1.Cells(1, Ws_1.Columns.Count).End(xlToLeft).Column
    
    HedefSatir = 2
    Ws_2.Range("A:C").ClearContents
    Ws_2.Cells(1, "A").Value = "Sembol"
    Ws_2.Cells(1, "B").Value = "Kurum"
    Ws_2.Cells(1, "C").Value = "Lot"
    
    For Sira = 2 To Ws_1.Cells(Rows.Count, "A").End(xlUp).Row
        For Bak = 2 To SonKolon Step 2
            Ws_2.Cells(HedefSatir, "A").Value = Ws_1.Cells(Sira, 1).Value
            Ws_2.Cells(HedefSatir, "B").Value = Ws_1.Cells(Sira, Bak).Value
            Ws_2.Cells(HedefSatir, "C").Value = Ws_1.Cells(Sira, Bak + 1).Value
            HedefSatir = HedefSatir + 1
        Next
    Next
    
    MsgBox "Tamamlandı.", vbInformation
End Sub
 

Korhan Ayhan

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

Formülle çözüm;

Verilerinizin Sayfa1'de olduğunu varsayarsak;

Sayfa2 1. satıra başlıklarınızı yazınız. (Sembol-Kurum-Lot)

A2 hücresine;
C++:
=EĞERHATA(TEMİZ(İNDİS(Sayfa1!$A:$Z;TAMSAYI((SATIR()-2)/10)+2;1));"")
B2 hücresine;
C++:
=EĞERHATA(TEMİZ(İNDİS(Sayfa1!$A:$Z;TAMSAYI((SATIR()-2)/10)+2;MOD(SATIR()-2;10)*2+2));"")
C2 hücresine;
C++:
=EĞERHATA(TEMİZ(İNDİS(Sayfa1!$A:$Z;TAMSAYI((SATIR()-2)/10)+2;MOD(SATIR()-2;10)*2+3));"")
Sonra bu formülleri tüm verileri görebileceğiniz kadar alta doğru çoğaltınız.
 
Üst