Belli satırdan başlayan sütunların yerlerinin değiştirme

Katılım
24 Temmuz 2019
Mesajlar
413
Excel Vers. ve Dili
EXCEL 2010 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25-12-2023
Değerli excel dostları selamlar

5. Satırdan son dolu satıra kadar verili alanların bulunduğu sütunların yerlerini değiştirmek istiyorum. Değiştirme sıralaması UserFormdaki Combobox sıralamasına göre olacak. Formda bir kod var. Bu platformdaki bir çalışmadan almıştım ama sahibini hatırlamıyorum. Bu kod ilk dört satırda birleştirme olduğu için çalışmıyor. Yeni bir koda veya kodun düzenlenmesine ihtiyacım var.

Selamlar.
 

Ekli dosyalar

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Aşağıdaki soruları cevaplar mısınız?

1. Kolonları Combolardan seçilen sıraya göre yeniden dizmek mi?
2. Comboların her birinde seçim yapılmış olması şart mı?
3. Comboların birden fazlasında aynı seçenek yanlışlıkla seçilmişse (mesela Combo2= Başlık1, Combo6=Başlık1 gibi) ne olacak?
4. Satır sayısı sabit midir?
 
Katılım
24 Temmuz 2019
Mesajlar
413
Excel Vers. ve Dili
EXCEL 2010 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25-12-2023
Aşağıdaki soruları cevaplar mısınız?

1. Kolonları Combolardan seçilen sıraya göre yeniden dizmek mi?
2. Comboların her birinde seçim yapılmış olması şart mı?
3. Comboların birden fazlasında aynı seçenek yanlışlıkla seçilmişse (mesela Combo2= Başlık1, Combo6=Başlık1 gibi) ne olacak?
4. Satır sayısı sabit midir?
Ömer Faruk Bey çok teşekkür ederim.
1. Evet
2. Tüm Combolorı seçip o listeye göre düzenlensin ıstiyorum.
3. Uyari versin
4. Satır sayısı sabit değil.
 
Son düzenleme:

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Comboboxlarınız 2 den 9 a kadarmış. 1 den 8 e kadar olacak şekilde yeniden isimlendirdim.
Userform Inıtialize kodlarını aşağıdaki gibi değiştirdim.
C++:
Private Sub UserForm_Initialize()
  Dim x As Long
    y = Range("A5").End(xlToRight).Column
    MyList = Range(Cells(5, 1), Cells(5, y)).Value
    ComboBox1.List = Application.Transpose(MyList)
    ComboBox2.List = Application.Transpose(MyList)
    ComboBox3.List = Application.Transpose(MyList)
    ComboBox4.List = Application.Transpose(MyList)
    ComboBox5.List = Application.Transpose(MyList)
    ComboBox6.List = Application.Transpose(MyList)
    ComboBox7.List = Application.Transpose(MyList)
    ComboBox8.List = Application.Transpose(MyList)

    ListBox1.ColumnCount = UBound(MyList)
    ListBox1.List = Application.Transpose(MyList)
End Sub
Buton kodlarınızı aşağıdaki gibi değiştirdim
C++:
Private Sub CommandButton7_Click()
    Dim i As Integer, k As Integer
    For i = 1 To 7
        For k = i + 1 To 8
        If Controls("ComboBox" & i).Value = Controls("ComboBox" & k).Value Then
        MsgBox "Hatalı Sütun seçimi var"
        Exit Sub
        End If
        Next k
    Next i
    Dim dizi, Liste, Son As Integer
    Son = Range("A" & Rows.Count).End(3).Row
    dizi = Range("A5:H" & Son).Value
    ReDim Liste(1 To UBound(dizi, 1), 1 To UBound(dizi, 2))
    For i = 1 To 8
        Bul = WorksheetFunction.Match(Controls("Combobox" & i).Value, Range("A5:H5"), 0)
        If Bul > UBound(dizi, 2) Then MsgBox "Dosyanızda fazladan sütun var": Exit Sub
        For k = 1 To UBound(dizi, 1)
            Liste(k, i) = dizi(k, Bul)
        Next k
    Next i
    Range("A5:H" & Son) = Liste
End Sub
 
Katılım
24 Temmuz 2019
Mesajlar
413
Excel Vers. ve Dili
EXCEL 2010 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25-12-2023
Değerli Üstadım @ÖmerFaruk Bey bir kez daha imdada yetiştiniz. Minnettarım. Var olun. Sorun çözülmüş amaçlanan hedefe ulaşılmıştır.
 
Üst