• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü UserFormda Listviewden veri alma güncelleme

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

sanalx

Yeni Üye
Katılım
26 Kas 2022
Mesajlar
118
Aldığı beğeni
15
Excel V
Office 2021 TR
Konu Sahibi
Merhaba Arkadaşlar kolay gelsin
Resimde görüldüğü gibi listview den veri tıkladığımda texboxlara veriler geliyor fakat ne yaptımsa StokId yi getiremedim sanırım güncellemeyi de bu yüzden yapamıyorum.


tıklama ile verileri bu kod ile yapıyorum
Private Sub StokBilgiList_ItemClick(ByVal Item As MSComctlLib.ListItem)

On Error Resume Next
'Application.ScreenUpdating = False
Application.DisplayAlerts = False
Sheets("Stoklar").Select
Application.DisplayAlerts = True

If Me.StokBilgiList.SelectedItem.ListSubItems(1).Text = "" Then
MsgBox "Seçtiğiniz Bölümde herhangi bir veri bulunmamaktadır..."
Exit Sub
End If

Dim satir As Long
For satir = 1 To 6
Me.StokBilgiList.SelectedItem.ListSubItems(satir).ForeColor = vbRed
Me.StokBilgiList.SelectedItem.ListSubItems(satir).Bold = True
Next
StokBilgiList.HotTracking = True


StokBarcode = Me.StokBilgiList.SelectedItem.ListSubItems(1).Text
Stokad = Me.StokBilgiList.SelectedItem.ListSubItems(2).Text
MarkaModel = Me.StokBilgiList.SelectedItem.ListSubItems(3).Text
Cinsi = Me.StokBilgiList.SelectedItem.ListSubItems(4).Text
CBBirimi = Me.StokBilgiList.SelectedItem.ListSubItems(5).Text
StokID = Me.StokBilgiList.SelectedItem.ListSubItems(6).Text


End Sub


Güncelleme Kodu ise ; Aşağıdaki kod ile yapıyorum Güncelle ye tıklıyorum resimdeki gibi ileti geliyor Tamam desemde Güncellemiyor. Yardımlarınızı Bekliyorum Saygılarımla.

Private Sub stkGuncelle_Click()
On Error Resume Next

Dim x As Long
Dim Sor As Byte
Sor = MsgBox("Güncelleme Yapmak İstiyor musunuz?", vbYesNo + vbDefaultButton1 + vbQuestion, "Güncelle")
If Sor = vbNo Then Exit Sub

For x = 2 To 1000000
If Sheets("Stoklar").Range("A" & x).Value = "" Then Exit For
If Trim(Sheets("Stoklar").Range("A" & x).Value) = Trim(StokID.Value) Then

Sheets("Stoklar").Range("B" & x).Value = StokBarcode.Value
Sheets("Stoklar").Range("C" & x).Value = UCase(Stokad.Value)
Sheets("Stoklar").Range("D" & x).Value = UCase(MarkaModel.Value)
Sheets("Stoklar").Range("E" & x).Value = UCase(Cinsi.Value)
Sheets("Stoklar").Range("F" & x).Value = UCase(CBBirimi.Value)


Exit For

End If
Next

UserForm_Initialize

End Sub
 
Çözüm
Me.StokBilgiList.SelectedItem.ListSubItems(1) yerine ikici kod ve Me.StokBilgiList.SelectedItem yerinede ilk olan kısaca yazılabilinir.

Mesaj kutusunu özellikle yazdım tıklayınca sonucu görebilesiniz diye örnek olarak.
Kısaca item ilk listviewin ilk sütunu oluyor Item.SubItems(1) bu ise ikinci.

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
Msgbox Me.StokBilgiList.SelectedItem
Yukardakini ekleyip çalıştırıp deneyin.
 
Konu Sahibi
Malesef. olmadı verdiğiniz kod mesaj iletisi ile ilgili değil mi ben verilerin tamamını getiremiyorum gelen veriyi de günceleyemiyorum
 
Konu Sahibi
resimde de görüldüğü gibi verilerin 1 i hariç hepsi geliyor . textbox lara o gelmeyen 1 adet veri neden gelmiyor anlamadım ne yaptıysam olmadı. gelen verileri de vermiş olduğum güncelle komutlarıyla güncelleyemedim sebebi eksik veri gelmesimidir anlamadım
 
Sayın abey anladım herşeyi.Sadece mesajda ne verdi?
Ayrıca sizin için örnek dosyayı kim hazırlayacak?
 
Önceki mesajımı uygulayın yapamazsanız resim değil excel dosya ekleyin.
 
Me.StokBilgiList.SelectedItem.ListSubItems(1) yerine ikici kod ve Me.StokBilgiList.SelectedItem yerinede ilk olan kısaca yazılabilinir.

Mesaj kutusunu özellikle yazdım tıklayınca sonucu görebilesiniz diye örnek olarak.
Kısaca item ilk listviewin ilk sütunu oluyor Item.SubItems(1) bu ise ikinci.

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
Çözüm
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst