comboboxa göre süzme işlemi ve seçilen comboboxa göre textboxa veri alımı

Katılım
4 Şubat 2008
Mesajlar
24
Excel Vers. ve Dili
ms2007 türkçe
Altın Üyelik Bitiş Tarihi
02/04/2019
arkadaşlar örnek dosyada hazırladığım formda bazı çözemediğim hususlar var. yardımcı olursanız sevinirim.

kullanıcı adı ve şifresi "1"

1- İHRACAT VERİ GİRİŞİ>FİRMA BAZINDA SÜZ formdaki firma ünvanlarını İHRACAT sayfası D15-D30000 aralığına göre comboboxa aldırmak ve süz butonuna tıklandığında comboboxtaki seçeceğim firma ünvanına göre İHRACAT Sayfasındaki bilgileri SÜZ sayfasına süzmek istiyorum.

2- İHRACAT VERİ GİRİŞİ formundaki Gümrük İdaresi comboboxun değerlerini veri sayfasındaki değerlerden ve Firma Ünvanı comboboxun değerlerini yine veri sayfasındaki değerlere göre aldırmak ve seçilen firmaya göre ona karşılık gelen vergi numarasını otomatik textboxa aldırmak, yine aynı şekilde ürün comboboxun değerlerini veri sayfasından aldırmak ve seçilen ürüne karşılık gelen GTİP kodu ve istatistiki miktarları otomatik textboxa aldırmak istiyorum.
 
Katılım
4 Şubat 2008
Mesajlar
24
Excel Vers. ve Dili
ms2007 türkçe
Altın Üyelik Bitiş Tarihi
02/04/2019
onca buradan öğrendiğimiz seylerlen işimizi görecek program yapalım dedik tıkandık kaldık. denediğim kodlar işe yaramıyor.derdime çare olacak yok mu bir üstad?
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,842
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Private Sub ComboBox1_Change()
VER = ComboBox1.ListIndex + 5
ComboBox2.Text = Sheets("VERİ").Cells(VER, 2).Value
TextBox1.Text = Sheets("VERİ").Cells(VER, 3).Value
ComboBox3.Text = Sheets("VERİ").Cells(VER, 5).Value
TextBox3.Text = Sheets("VERİ").Cells(VER, 5).Value
TextBox4.Text = Sheets("VERİ").Cells(VER, 7).Value
End Sub

Private Sub UserForm_Initialize()
SATIR = WorksheetFunction.CountA(Worksheets("VERİ").Range("A5:A65000")) + 4
ComboBox1.RowSource = "VERİ!A5:A" & SATIR
End Sub

userform1 içine yapıştır
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,842
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Private Sub ComboBox1_Change()
sayfa_adı = "VERİ"
satır_no = ComboBox1.ListIndex + 5
ComboBox2.Text = Sheets(sayfa_adı).Cells(satır_no, 2).Value
TextBox1.Text = Sheets(sayfa_adı).Cells(satır_no, 3).Value
ComboBox3.Text = Sheets(sayfa_adı).Cells(satır_no, 5).Value
TextBox3.Text = Sheets(sayfa_adı).Cells(satır_no, 6).Value
TextBox4.Text = Sheets(sayfa_adı).Cells(satır_no, 7).Value
End Sub

Private Sub UserForm_Initialize()
sayfa_adı = "VERİ"
satır_aralıgı = WorksheetFunction.CountA(Worksheets(sayfa_adı).Range("A5:A65000")) + 4
ComboBox1.RowSource = sayfa_adı & "!A5:A" & satır_aralıgı
End Sub

'bunu userform1 içine kapyala yapıştır
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Ekte dosyanın düzenlenmiş hali bulunmaktadır.

1- İHRACAT VERİ GİRİŞİ>FİRMA BAZINDA SÜZ formdaki firma ünvanlarını İHRACAT sayfası D15-D30000 aralığına göre comboboxa aldırmak ve süz butonuna tıklandığında comboboxtaki seçeceğim firma ünvanına göre İHRACAT Sayfasındaki bilgileri SÜZ sayfasına süzmek istiyorum.
Bunun için aşağıdaki kodlar düzenlendi.

Kod:
Private Sub UserForm_Initialize()
    Dim col As New Collection
    Dim i As Integer
 
    On Error Resume Next
 
    With Sheets("İHRACAT")
        For i = 15 To .Cells(65536, 4).End(xlUp).Row
            col.Add CStr(.Cells(i, 4)), CStr(.Cells(i, 4))
            If Err = 0 Then
                ComboBox1.AddItem CStr(.Cells(i, 4))
            Else
                Err = 0
            End If
        Next i
    End With
    ComboBox1.ListIndex = 0
 
    On Error GoTo 0
 
End Sub
Kod:
Private Sub CommandButton1_Click()
    Dim i As Integer
    Dim iStr As Integer
 
    iStr = 15
 
    Application.Calculation = xlCalculationManual
    Sheets("SÜZ").Rows("15:5000").ClearContents
 
    With Sheets("İHRACAT")
        For i = 15 To .Cells(65536, 4).End(xlUp).Row
            If .Cells(i, 4) = ComboBox1 Then
                .Range(.Cells(i, 1), .Cells(i, 13)).Copy Sheets("SÜZ").Range("A" & iStr & ":M" & iStr)
                iStr = iStr + 1
            End If
        Next i
    End With
    Application.Calculation = xlCalculationAutomatic
 
    Sheets("SÜZ").Select
    Unload UserForm5
    Unload UserForm2
    Unload UserForm4
 
End Sub
Aşağıdaki madde için de düzenlemeler yapıldı ancak istatistiki miktar dediğiniz şeyin ne olduğunu anlayamadığımdan sadece bu kısım es geçildi.

2- İHRACAT VERİ GİRİŞİ formundaki Gümrük İdaresi comboboxun değerlerini veri sayfasındaki değerlerden ve Firma Ünvanı comboboxun değerlerini yine veri sayfasındaki değerlere göre aldırmak ve seçilen firmaya göre ona karşılık gelen vergi numarasını otomatik textboxa aldırmak, yine aynı şekilde ürün comboboxun değerlerini veri sayfasından aldırmak ve seçilen ürüne karşılık gelen GTİP kodu ve istatistiki miktarları otomatik textboxa aldırmak istiyorum.
Bunun için aşağıdaki kodlar düzenlendi.

Kod:
Private Sub UserForm_Initialize()
    Dim i As Integer
 
    With Sheets("VERİ")
        ComboBox1.List = .Range("A5:A" & .Cells(65536, 1).End(xlUp).Row).Value
        ComboBox2.List = .Range("B5:B" & .Cells(65536, 2).End(xlUp).Row).Value
        ComboBox3.List = .Range("E5:E" & .Cells(65536, 5).End(xlUp).Row).Value
 
    End With
 
    i = Worksheets("İHRACAT").UsedRange.Rows.Count
    Label15 = i - 13
End Sub
Kod:
Private Sub ComboBox2_Change()
    Dim rngBul As Range
 
    Set rngBul = Sheets("VERİ").Columns(2).Find(ComboBox2, Lookat:=xlWhole)
    If Not rngBul Is Nothing Then
        TextBox5 = rngBul.Offset(0, 1)
    Else
        TextBox5 = Empty
    End If
    Set rngBul = Nothing
 
End Sub
Private Sub ComboBox3_Change()
    Dim rngBul As Range
 
    Set rngBul = Sheets("VERİ").Columns(5).Find(ComboBox3, Lookat:=xlWhole)
 
    If Not rngBul Is Nothing Then
        TextBox8 = rngBul.Offset(0, 1)
    Else
        TextBox8 = Empty
    End If
    Set rngBul = Nothing
End Sub


--------------- DÜZELTME -------------------
- Dosya yeniden eklendi / fpc - 07.11.08
----------------------------------------------
 

Ekli dosyalar

Son düzenleme:
Üst