Dikey olan verileri yataya çevirme

Turan61

Altın Üye
Katılım
27 Kasım 2009
Mesajlar
41
Excel Vers. ve Dili
Microsoft Office Professional Plus 2019
Türkçe
Altın Üyelik Bitiş Tarihi
30-11-2026
Selam arkadaşlar
B sütünün da yaklaşık 5000 satır sayı ve metinden oluşan öğrenci kimlik bilgileri bulunmaktadır. Aşağıya doğru 7 satır da bir bir kişinin kimlik bilgisi bulunmaktadır. Bu kişileri farklı bir sayfada yatay olarak alt alta gelecek şekilde nasıl sıralayabilirim.

ÖRNEK:

Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi
Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi
Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi

OLMASI GEREKEN

SN Öğrenci Numarası TC Kimlik No Sınıfı/Şubesi Adı Soyadı Baba Adı Anne Adı Cinsiyeti Doğum Tarihi
1
2
3
4
5
6
7
8
9
10
 
Katılım
26 Kasım 2021
Mesajlar
6
Excel Vers. ve Dili
2007
Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi
Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi
Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi

bu verilerin hepsini seç boş bir hücreye gelerek sağ tıklayarak özel yapıştır kutucuklar açılacak işlemi tersine ceviri seçerek tamam dediginde hepsi istedigin hale dönecek
 

Turan61

Altın Üye
Katılım
27 Kasım 2009
Mesajlar
41
Excel Vers. ve Dili
Microsoft Office Professional Plus 2019
Türkçe
Altın Üyelik Bitiş Tarihi
30-11-2026
Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi
Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi
Öğrenci Numarası
TC Kimlik No
Sınıfı/Şubesi
Adı Soyadı
Baba Adı
Anne Adı
Cinsiyeti
Doğum Tarihi

bu verilerin hepsini seç boş bir hücreye gelerek sağ tıklayarak özel yapıştır kutucuklar açılacak işlemi tersine ceviri seçerek tamam dediginde hepsi istedigin hale dönecek
Bahsettiğiniz yöntemi denedim dikey olan veriyi tamamen yataya çeviriyor. Benim istediğim Her 7 satırı ayrı ayrı yatay olarak alt alta başlıklara göre sıralamasını istiyorum.
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Her iki sayfada da 1. satırlar başlık satırı olarak varsaydım.
Aşağıdaki kodu ilk sayfada çalıştırın.
Yeni Sayfanınızın adı Sayfa2 değilse kod içinde gerekli yeri değitşirin.

İşlemi bir seferliğine yapacağınızı öngördüğümden dolayı klasik yöntemle yaptım. İşlem süreniz bilgisayar performansına göre 10-15 saniye olabilir.
Eğer sürekli yapacaksanız hızlandırabiliriz.

C++:
Sub Yatay()
Dim YeniSayfa As Worksheet
    Set YeniSayfa = Worksheets("Sayfa2")
    k = 1
    For i = 2 To Worksheets("Sayfa1").Range("B" & Rows.Count).End(3).Row Step 8
        k = k + 1
        YeniSayfa.Range("A" & k) = k - 1
        For x = 2 To 9
           YeniSayfa.Cells(k, x) = Worksheets("Sayfa1").Range("B" & i).Offset(x - 2, 0)
        Next x
    Next i
End Sub
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Bu da hızlı hali
C++:
Sub Yatay2()
Dim Veri, Liste()
    Veri = Worksheets("Sayfa1").Range("B2:B" & Worksheets("Sayfa1").Range("B" & Rows.Count).End(3).Row).Value
    ReDim Liste(1 To UBound(Veri) / 8, 1 To 9)
    For i = 1 To UBound(Veri) Step 8
        Say = Say + 1
        Liste(Say, 1) = Say
        For k = 1 To 8
            Liste(Say, k + 1) = Veri(i + k - 1, 1)
        Next k
    Next i
    Worksheets("Sayfa2").Range("A2").Resize(Say, 9) = Liste
End Sub
 

Turan61

Altın Üye
Katılım
27 Kasım 2009
Mesajlar
41
Excel Vers. ve Dili
Microsoft Office Professional Plus 2019
Türkçe
Altın Üyelik Bitiş Tarihi
30-11-2026
Her iki sayfada da 1. satırlar başlık satırı olarak varsaydım.
Aşağıdaki kodu ilk sayfada çalıştırın.
Yeni Sayfanınızın adı Sayfa2 değilse kod içinde gerekli yeri değitşirin.

İşlemi bir seferliğine yapacağınızı öngördüğümden dolayı klasik yöntemle yaptım. İşlem süreniz bilgisayar performansına göre 10-15 saniye olabilir.
Eğer sürekli yapacaksanız hızlandırabiliriz.

C++:
Sub Yatay()
Dim YeniSayfa As Worksheet
    Set YeniSayfa = Worksheets("Sayfa2")
    k = 1
    For i = 2 To Worksheets("Sayfa1").Range("B" & Rows.Count).End(3).Row Step 8
        k = k + 1
        YeniSayfa.Range("A" & k) = k - 1
        For x = 2 To 9
           YeniSayfa.Cells(k, x) = Worksheets("Sayfa1").Range("B" & i).Offset(x - 2, 0)
        Next x
    Next i
End Sub
Bu kod başlıklara göre yapmasa da işimi gördü.
Çok teşekkür ederim.
 
Son düzenleme:
Üst