listboxtaki veriyi textbox ile düzeltme yapmak

Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
sn üstadlarım herkese hayırlı günler
sabahtan beri uğraştığım ve bana kafayı yedirten bir kodu sizinle paylaşmak istiyorum.yardımcı olacak arkadaşlara şimdiden teşekkür ederim.

->listbox a şu kodlarla verileri alıyorum;
kod:
ListBox1.RowSource = "A7:B" & [b65536].End(3).Row->ardından şu kodlarlada çift tıklayarak text3 ve text4 e listboxtaki verileri aktarıyorum
kod:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
TextBox3.Value = ListBox1.Column(0)
TextBox4.Value = ListBox1.Column(1)
End Sub

sorun şurda oluşuyor.textboxlardaki verileri değiştirip tekrar kaydet(commanbutton3) deyince olanlar oluyor ve çift tıkladığım satırdaki veriler değilde başka satırdaki veriler değişiyor.bazen doğru değiştiriyor bazen de yanlış.
kod:
Private Sub CommandButton3_Click()
Cells(ListBox1.ListIndex + 7, 1) = TextBox3.Value
Cells(ListBox1.ListIndex + 7, 2) = TextBox4.Value
End Sub


sn arkadaşlar yardımlarınızı bekliyorum.en azından bunun nedeni nedir?
saygılar teşekkürler.:yardim:
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,680
Excel Vers. ve Dili
Excel 2019 Türkçe
Dosyanızın küçük bir örneğini ekleyin
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
pek aynısı olmasada benzer bir durum

ilginize teşekkür ederim.dosya ektedir

aslında problem iki sütundan oluşan listboxtaki çift tıklanan satırın doğru sayfada ve doğru satırda düzeltilmesi.bazen doğru yapsada çoğu zaman yanlış düzeltiyor.
teşekkürler saygılar:yardim:
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,680
Excel Vers. ve Dili
Excel 2019 Türkçe
Aşağıdaki kodu eskisi ile değiştirin.

Kod:
Private Sub CommandButton1_Click()
Sheets("sayfa2").Select
Cells(ListBox1.ListIndex + 1, 1) = Format(TextBox1, "DD/MM/YYYY")
Cells(ListBox1.ListIndex + 1, 2) = Format(TextBox2, "DD/MM/YYYY")
UserForm_Initialize
End Sub
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
sn hamitcan ilginize çok teşekkür ederim
ancak maalesef yine olmadı.yazdığınız bu kodlarla sayfa2 deki listboxta listelenmiş hücreyi düzeltemiyorum.yazdığım programda yine düzelt butonuna basınca başka hücredeki veriyi düzeltiyor.acaba bunun başka bir yöntemi yok mu?listboxta sıralanmış bir veriyi başka kodlarla düzeltmek mümkün mü?
yardımcı olacaklara teşekkür ederim.
saygılar
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,680
Excel Vers. ve Dili
Excel 2019 Türkçe
Dikkatimi çeken birşey oldu. "A" sütunundaki tarihleri tekrar girmeyi dener misiniz?
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
ilginize teşekkürler

herkese günaydın

maalesef kaç gündür uğraşıyorum ama bi türlü olmuyor. neredeyse bildiğim her yolu denedim.
aklıma bişey daha geldi ama bu konuda pek bi bilgim yok.arkadaşlar yardımcı olabilirlermi acaba?
kod:
Cells(ListBox1.ListIndex + 7, 1) = TextBox3.Value

yukarıdaki kodda sanırım 1 sayısı listboxta işaretlenmiş satırı ifade ediyor.problemde buradan doğuyor diye sanıyorum.çünkü listbox ta işaretli satırı sayfa2 de karşılığına gelen hücreyi düzeltmiyor başka bi hücreye yönleniyor.şunu sormak istiyorum 1 yerine a desek ve a'yı listboxta işaretlenmiş satır sayısı olarak tanımlasak a değerini nasıl yazamamız gerekir.
a=listbox ta işaretli satırın kaçıncı satır olduğu

teşekkürler saygılar:yardim:
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,614
Excel Vers. ve Dili
Pro Plus 2021
RowSource olayını hiç sevemedim.
Kod:
Private Sub CommandButton1_Click()
    Sheets("sayfa2").Select
    If ListBox1.ListIndex < 1 Then
        MsgBox "Listeden Se&#231;im Yap&#305;n"
        Exit Sub
    End If
    sira = ListBox1.ListIndex + 1
    Cells(sira, 1) = CDate(TextBox1.Value)
    Cells(sira, 2) = TextBox2.Value
End Sub
Private Sub CommandButton2_Click()
    Unload Me
    'Sheets("ana").Select
    'ActiveWorkbook.Close True
End Sub
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1.Value = Format(CDate(ListBox1.Column(0)), "dd.mm.yyyy")
    TextBox2.Value = ListBox1.Column(1)
End Sub
Private Sub UserForm_Initialize()
    ListBox1.ColumnCount = 2
    ListBox1.ColumnWidths = "100;170"
    Sheets("sayfa2").Select
    ListBox1.RowSource = "A1:B" & [b65536].End(3).Row
End Sub
 
Son düzenleme:
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
sn veyselemre san&#305;r&#305;m bu kodlar i&#351;ime yarad&#305;.bika&#231; deneme yapt&#305;m hedef do&#287;ru &#231;&#305;k&#305;yor.umar&#305;m yine problem olu&#351;turmaz.
elinize sa&#287;l&#305;k &#231;ok te&#351;ekk&#252;r ederim.
sayg&#305;lar.
 
Üst