• Merhaba Ziyaretçi,
    Microsoft 365 Uygulamaları ile ilgili yeni haberler, dikkat çekici konular, ilgi ile takip edeceğiniz yazılar için.

    Abone Olun
  • ESTE - Microsoft Office Eğitimleri

    Yeni yıl Microsoft Office Eğitim planlarınız için bütçenizi oluşturmadan önce ESTE eğitim kalitesi ile tanışın. 🙌
    Kullanıcıların ihtiyacı olan yazılı materyal, dosya ve video kaynağı desteğimiz ile tüm ofis çalışanlarının iş süreçlerini rahatlatacak eğitimler planlayın. 🎯
    Microsoft Office eğitimlerimiz hakkında detaylı bilgi için bize ulaşın.

    👉 Microsoft Office Eğitim Talebi

Yardım COMBOBOX ARAMA MAKROSU

jerfinby

Yeni Üye
Katılım
21 Haz 2021
Mesajlar
7
En iyi yanıt
0
Puanları
3
Yaş
53
Konum
samsun
Ad Soyad
serkan duru
Office Vers.
office 2016 tr
Sevgili üstadlar kolay gelsin
Excelde hazırlamış olduğum bir çalışma kitabında kayıtlar sayfasında b sütünunda arama yapıp bulduğum veriler listboxta gösterilsin ve bu verileri sayfa5 e kopyalasın istiyorum.
Bu konuda yardımlarınızı bekliyorum. Şimdiden teşekkürler
https://www.hizliresim.com/upload-success

Dosya Yükle - Dosya Uploadİ_DENEME.zip.html


Private Sub ComboBox1_Change()
Dim say, i As Long, s As Byte

Sheets("Kayıtlar").Activate
ListBox1.Clear
say = WorksheetFunction.CountA(Sheets("Kayıtlar").Range("B:B"))
s = 0
For i = 1 To say
If Range("B" & i) = ComboBox1.Value Then
ListBox1.AddItem
ListBox1.ColumnCount = 7
ListBox1.List(s, 0) = Sheets("Kayıtlar").Range("A" & i)
ListBox1.List(s, 1) = Sheets("Kayıtlar").Range("B" & i)
ListBox1.List(s, 2) = Sheets("Kayıtlar").Range("C" & i)
ListBox1.List(s, 3) = Sheets("Kayıtlar").Range("D" & i)
ListBox1.List(s, 4) = Sheets("Kayıtlar").Range("E" & i)
ListBox1.List(s, 5) = Sheets("Kayıtlar").Range("F" & i)
ListBox1.List(s, 6) = Sheets("Kayıtlar").Range("G" & i)


s = s + 1
End If
Next i
Label1.Caption = ListBox1.ListCount & " Records!"
End Sub
 

Ekli dosyalar

  • YENİ_DENEME.xlsM
    607.6 KB · Görüntüleme: 8

azraep

Yeni Üye
Katılım
29 Eki 2020
Mesajlar
153
En iyi yanıt
2
Puanları
28
Yaş
77
Konum
İstanbul
Ad Soyad
Azra
Office Vers.
Office 2019 TR
Kodlarınızda ufak bi düzeltme ile listeleme sorumu çözüldü gibi
Kod:
Private Sub UserForm_Initialize()
Dim x, a, b, z, k As Long, c As Variant

'Unique Records
Sheets("Kayıtlar").Activate
For x = 2 To Cells(Rows.Count, 1).End(xlUp).Row
If WorksheetFunction.CountIf(Range("B2:B" & x), Cells(x, 2)) = 1 Then
ComboBox1.AddItem Cells(x, 2).Value
End If
Next
'Alphabetic Order
For a = 0 To ComboBox1.ListCount - 1
  For b = a To ComboBox1.ListCount - 1
        If ComboBox1.List(b) < ComboBox1.List(a) Then
c = ComboBox1.List(a)
    ComboBox1.List(a) = ComboBox1.List(b)
    ComboBox1.List(b) = c
       End If
  Next
  Next

End Sub

combobox seçim kodunda da aşağıdaki değişiklik işinizi görecektir

Kod:
Private Sub ComboBox1_Change()
say = Cells(Rows.Count, 1).End(xlUp).Row
 

jerfinby

Yeni Üye
Katılım
21 Haz 2021
Mesajlar
7
En iyi yanıt
0
Puanları
3
Yaş
53
Konum
samsun
Ad Soyad
serkan duru
Office Vers.
office 2016 tr
Kodlarınızda ufak bi düzeltme ile listeleme sorumu çözüldü gibi
Kod:
Private Sub UserForm_Initialize()
Dim x, a, b, z, k As Long, c As Variant

'Unique Records
Sheets("Kayıtlar").Activate
For x = 2 To Cells(Rows.Count, 1).End(xlUp).Row
If WorksheetFunction.CountIf(Range("B2:B" & x), Cells(x, 2)) = 1 Then
ComboBox1.AddItem Cells(x, 2).Value
End If
Next
'Alphabetic Order
For a = 0 To ComboBox1.ListCount - 1
  For b = a To ComboBox1.ListCount - 1
        If ComboBox1.List(b) < ComboBox1.List(a) Then
c = ComboBox1.List(a)
    ComboBox1.List(a) = ComboBox1.List(b)
    ComboBox1.List(b) = c
       End If
  Next
  Next

End Sub

combobox seçim kodunda da aşağıdaki değişiklik işinizi görecektir

Kod:
Private Sub ComboBox1_Change()
say = Cells(Rows.Count, 1).End(xlUp).Row
 

jerfinby

Yeni Üye
Katılım
21 Haz 2021
Mesajlar
7
En iyi yanıt
0
Puanları
3
Yaş
53
Konum
samsun
Ad Soyad
serkan duru
Office Vers.
office 2016 tr
Azraep hocam kopyalama sayfa5'e yaparken 2 satırdan başlarsa çok sevinirim.
 

azraep

Yeni Üye
Katılım
29 Eki 2020
Mesajlar
153
En iyi yanıt
2
Puanları
28
Yaş
77
Konum
İstanbul
Ad Soyad
Azra
Office Vers.
Office 2019 TR
A1:G1 kayıtlardaki başlıkları aldım.
Sayfaya ekle kodunuzu da değiştirdim.
Umarım işinizi görür.

Kod:
Private Sub CommandButton1_Click()

Dim s1 As Worksheet

    Set s1 = Sheets("Sayfa5")
    s1.Range("A2:G2").ClearContents
    If ListBox1.ListCount = 0 Then
     MsgBox "There Is No Data To Be Copied.", vbCritical, ""
     Exit Sub
    End If
    
    sat = 1
    For i = 0 To ListBox1.ListCount - 1
        If ListBox1.Selected(i) = True Then
            For x = 0 To 6
                s1.Cells(2, sat).Value = ListBox1.Column(x, i)
                sat = sat + 1
            Next
        End If
    Next

    MsgBox "The Selected Data Was Copied.", vbApplicationModal, ""
    Set s1 = Nothing
    Unload Me
 

jerfinby

Yeni Üye
Katılım
21 Haz 2021
Mesajlar
7
En iyi yanıt
0
Puanları
3
Yaş
53
Konum
samsun
Ad Soyad
serkan duru
Office Vers.
office 2016 tr
A1:G1 kayıtlardaki başlıkları aldım.
Sayfaya ekle kodunuzu da değiştirdim.
Umarım işinizi görür.

Kod:
Private Sub CommandButton1_Click()

Dim s1 As Worksheet

    Set s1 = Sheets("Sayfa5")
    s1.Range("A2:G2").ClearContents
    If ListBox1.ListCount = 0 Then
     MsgBox "There Is No Data To Be Copied.", vbCritical, ""
     Exit Sub
    End If
   
    sat = 1
    For i = 0 To ListBox1.ListCount - 1
        If ListBox1.Selected(i) = True Then
            For x = 0 To 6
                s1.Cells(2, sat).Value = ListBox1.Column(x, i)
                sat = sat + 1
            Next
        End If
    Next

    MsgBox "The Selected Data Was Copied.", vbApplicationModal, ""
    Set s1 = Nothing
    Unload Me
Selam hocam olmadı kopyalama yapmıyor
 

azraep

Yeni Üye
Katılım
29 Eki 2020
Mesajlar
153
En iyi yanıt
2
Puanları
28
Yaş
77
Konum
İstanbul
Ad Soyad
Azra
Office Vers.
Office 2019 TR
Bende çalışıyor şimdi gene denedim.
ikinci satıra eskileri silerek seçtiğin bilgileri kopyalıyor.
 

jerfinby

Yeni Üye
Katılım
21 Haz 2021
Mesajlar
7
En iyi yanıt
0
Puanları
3
Yaş
53
Konum
samsun
Ad Soyad
serkan duru
Office Vers.
office 2016 tr
Tamam tekrar denerim
 
Üst Alt