VBA Transpoze (Adım Adım) - VBA'da Transpoze Edilecek En İyi 2 Yöntem

Excel çalışma sayfasındaki transpoze fonksiyonunu çalışma sayfasına herhangi bir veri tablosunu yapıştırdığımızda gördük, transpoze, satırların ve sütunların konumunu değiştirmesidir, yani satırlar sütunlar ve sütunlar bir veri tablosunda satırlar olur, çünkü artık bir çalışma sayfasıdır işlevini VBA'da Application.worksheet yöntemi ile kullanıyoruz.

VBA'da Nasıl Transpoze Edilir?

Satırları ve sütunları değiştirmek, neredeyse tüm kullanıcıların Excel'de yaptığı veri işleme tekniklerinden biridir. Yatay veriyi düşey veriye, düşey veriyi yataya dönüştürme işlemine excel'de “Transpoze” denir. Eminim normal bir çalışma sayfasında Transposing'e aşina olmanız gerekir. Bu yazımızda, transpoze yönteminin VBA kodlamasında nasıl kullanılacağını göstereceğiz.

İki yöntem kullanarak VBA'da transpoze edebiliriz.

  1. TRANSPOSE Formülünü Kullanarak Transpoze Edin.
  2. Özel Yapıştır Yöntemini Kullanarak Transpoze Edin.

Yer değiştirirken, satırları sütunlara ve sütunları satırlara değiştiriyoruz. Örneğin, veri 4 X 3 dizisindeyse, 3 X 4 dizisi haline gelir.

VBA'da sütunu satıra dönüştürmek için bazı örnekler görelim.

# 1 - TRANSPOSE Formülünü Kullanan VBA Transpozesi

TRANSPOSE'u Excel'de benzer şekilde kullandığımız gibi, TRANSPOSE formülünü VBA'da da kullanabiliriz. VBA'da bir TRANSPOSE formülümüz yok, bu yüzden onu Çalışma Sayfası Fonksiyonu sınıfı altında kullanmamız gerekiyor.

Örneğin, aşağıdaki veri resmine bakın.

Bu değerler dizisini aktarmaya çalışacağız. Verileri değiştirmek için aşağıdaki adımları izleyin.

Adım 1: Alt prosedürü başlatın.

Kod:

Sub Transpose_Example1 () End Sub

Adım 2: Öncelikle, verileri nereye aktaracağımıza karar vermeliyiz. Bunda, D1 hücresinden H2'ye geçiş yapmayı seçtim. Bu nedenle, VBA kodunu Aralık ("D1: H2") olarak girin. Değer =

Kod:

Alt Transpoze_Örnek1 () Aralık ("D1: H2"). Değer = Son Alt

Adım 3: Şimdi, yukarıda belirtilen aralıkta, A1 ila B5 aralığının değerine ihtiyacımız var. Bu açık "Çalışma Sayfası Fonksiyonu" sınıfına ulaşmak için "Transpoze Et" formülünü seçin.

Adım 4: içinde Arg 1, örneğin, bir veri kaynağı dizi kaynağı, Range ( “A1: D5”) .

Kod:

Alt Transpoze_Örnek1 () Aralık ("D1: H2"). Değer = Çalışma SayfasıFonksiyonu.Transpose (Aralık ("A1: D5")) Son Alt

Tamam, TRANSPOSE formül kodlamasını bitirdik. Şimdi sonucu D1 ila H2 hücre aralığında görmek için kodu çalıştırın.

Yukarıdaki görüntüde gördüğümüz gibi, hücre aralığını sütunlardan satırlara dönüştürmüştür.

# 2 - Özel Yapıştır Yöntemiyle VBA Transpoze Etme

Özel Yapıştır yöntemini kullanarak da transpoze edebiliriz. Bu örnek için de aynı verileri düşünün.

Aktarmak için yapmamız gereken ilk şey verileri kopyalamaktır. Bu yüzden kodu Aralık ("A1: B5") olarak yazın.

Kod:

Alt Transpoze_Örnek2 () Aralık ("A1: B5"). Son Alt Kopyala

Sonraki şey, verileri nereye yapıştıracağımıza karar vermemiz gerektiğidir. Bu durumda, istenen hedef hücre olarak D1'i seçtim.

Kod:

Alt Transpoze_Örnek2 () Aralık ("A1: B5"). Kopyalama Aralığı ("D1"). Sub

İstenen hedef hücre seçildikten sonra, "Özel Yöntemi Yapıştır" ı seçmemiz gerekir.

Özel yapıştır ile sahip olduğumuz tüm işlemleri bir çalışma sayfasına düzenli yapıştırma özel yöntemlerle gerçekleştirebiliriz.

Tüm parametreleri göz ardı edin ve son parametreyi, yani Transpoze'yi seçin ve bunu TRUE yapın.

Kod:

Alt Transpoze_Örnek2 () Aralık ("A1: B5"). Kopyalama Aralığı ("D1"). PasteSpecial Transpoze: = True End Sub

Bu aynı zamanda verileri önceki yöntem gibi aktaracaktır.

Bunun gibi, satırları sütunlara ve sütunları satırlara dönüştürmek için verileri değiştirmek için TRANSPOSE formülünü veya Özel Yapıştır yöntemini kullanabiliriz.

Hatırlanacak şeyler

  • TRANSPOSE çalışma sayfası işlevini kullanıyorsak, verileri değiştirmek için birkaç satır ve sütun hesaplamak zorunludur. 5 satır ve 3 sütunumuz varsa, transpoze ederken, 3 satır ve 5 sütun olur.
  • Özel yapıştır'ı kullanırken aynı biçimlendirmeyi istiyorsanız, "xlPasteFormats" olarak Yapıştır Türü bağımsız değişkenini kullanmanız gerekir.

Bu VBA Transpose Excel Şablonunu buradan indirebilirsiniz - VBA Transpose Excel Şablonu.

Ilginç makaleler...