bul değiştir Hk.

Kemal Demir

Özel Üye
Katılım
29 Temmuz 2004
Mesajlar
2,108
Arkadaslar Arşive Ulaşamadıgım İçin Bir Şey Sormak İstiyorum.


Private Sub CommandButton1_Click()
'Listboxtan textboxlara gelen verilerde değişiklik yapmak istiyorum.
' noktalı yerlere ne ilave etmem gerekir.
.
.
.
.

Cells(sat, 1).Value = TextBox1.Value
Cells(sat, 2).Value = TextBox2.Value
Cells(sat, 3).Value = TextBox3.Value
End Sub


Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
'Listboxtaki verileri getiriyor
TextBox1 = ListBox1.Column(0)
TextBox2 = ListBox1.Column(1)
TextBox3 = ListBox1.Column(2)
End Sub


Private Sub UserForm_Initialize()
ListBox1.ColumnCount = 3
ListBox1.RowSource = "a1:c6"
ListBox1.ColumnHeads = False
End Sub
 

Kemal Demir

Özel Üye
Katılım
29 Temmuz 2004
Mesajlar
2,108
Sn.Const Control,

Linki inceledim güzel çalışma ama söle bir durum var.

Userformda Combo Kullanmıyorum.kişiye ait kayıt Bir den fazla ola biliyor.

Değiginiz gibi Bir kişiye ait kayıt bir den fazla olmasaydın Find Özelliği ile Combo kullanarak yapabilirdim.

Ama Textbox ta bu işlemi nasıl yapıcam.Listboxta üzerine tıkladıgım veri nasıl activeCell olacak bu konuda yardımcı olurmusunuz.

Örnek dosya Ekliyorum.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,253
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Userformunuzda bulunan kodları silip aşağıdakileri uygulayınız.

Kod:
Private Sub CommandButton1_Click()
    Application.ScreenUpdating = False
    Onay = MsgBox("Değişiklikleri onaylıyor musunuz ?", vbExclamation + vbYesNo, "Dikkat !")
    If Onay = vbNo Then
    [A1].Select
    MsgBox "İşleminiz iptal edilmiştir.", vbInformation
    Formu_Temizle
    Else
    ListBox1.RowSource = ""
    ActiveCell = TextBox1
    ActiveCell.Offset(0, 1) = TextBox2.Value
    ActiveCell.Offset(0, 2) = TextBox3.Value
    [A1].Select
    UserForm_Initialize
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
    End If
    Application.ScreenUpdating = True
End Sub

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Dim X As Integer
    If ListBox1.ListIndex < 0 Then
    TextBox1.SetFocus
    Exit Sub
    End If
    TextBox1.Value = ListBox1.Column(0)
    TextBox2.Value = ListBox1.Column(1)
    TextBox3.Value = ListBox1.Column(2)
    Cells(ListBox1.ListIndex + 2, 1).Select
    CommandButton1.Enabled = True
End Sub

Private Sub UserForm_Initialize()
    Formu_Temizle
    [A1].Select
    ListBox1.ColumnCount = 3
    ListBox1.ColumnHeads = True
    ListBox1.RowSource = "A2:C" & [A65536].End(3).Row
    CommandButton1.Enabled = False
End Sub

Sub Formu_Temizle()
    TextBox1 = ""
    TextBox2 = ""
    TextBox3 = ""
    TextBox1.SetFocus
    CommandButton1.Enabled = False
End Sub
 
Üst