Skip to main content

AccessTr.neT


Excel Vba Formdaki Bilgilerde Değişiklik Yapıldıysa Güncellesin.

Oğuz Türkyılmaz
Oğuz Türkyılmaz
13
764

Excel Vba Formdaki Bilgilerde Değişiklik Yapıldıysa Güncellesin.

Çözüldü #1
Merhaba
Excel sayfasına formdan girilen bilgileri arama butonu yardımıyla ID değerine göre buluyor ve form üstüne getirerek güncelleme ve silme işlemlerini yapabiliyordum. Fakat kayıt sayısı fazla olduğunda ID numarasını bulmakta ayrı bir filtreleme işlemi gerektireceğinden zaman kaybı oluşturacaktı ve çok kullanışlı olmadığından
bu yöntemden vazgeçtim. Firma Ünvanı adlı Textbox'ın change olayına yazılan kodla bilgileri Sayfadan forma getirebiliyorum. Form Üzerinde bir değişiklik yapıldığında güncelleme butonuna basarak bu değişikliklerin gerçekleşmesini nasıl sağlayabilirim. Yardımlarınız için teşekkür ederim.

Kod
Private Sub btn_Guncelle_Click()

With ThisWorkbook.Worksheets("Ana_Sayfa")


If MsgBox("Yaptığınız Değişiklikler Kaydedilerek, Bilgiler Güncellenecektir, Emin misiniz...?", vbExclamation + vbYesNo, "Firma Tanımlama Formu") = vbNo Then Exit Sub



        .Cells(Guncelle, 1) = TextBox_ID.Value
        .Cells(Guncelle, 2) = TextBox_FirmaAdi.Value
        .Cells(Guncelle, 3) = ComboBox_FirmaUnvani.Value
        .Cells(Guncelle, 4) = TextBox_YetkiliKisi.Value
        .Cells(Guncelle, 5) = TextBox_Telefon.Value
        .Cells(Guncelle, 6) = TextBox_Gsm.Value
        .Cells(Guncelle, 7) = TextBox_Email.Value
        .Cells(Guncelle, 8) = TextBox_Adres.Value
        .Cells(Guncelle, 9) = TextBox_Aciklama.Value
        .Cells(Guncelle, 10) = ComboBox_Ilce.Value
        .Cells(Guncelle, 11) = ComboBox_Sehir.Text
        .Cells(Guncelle, 12) = ComboBox_Bolge.Value
        .Cells(Guncelle, 13) = ComboBox_Temsilci.Value
        .Cells(Guncelle, 14) = ComboBox_RouteDay.Value
        .Cells(Guncelle, 15) = ComboBox_YetkiliBayilik
        .Cells(Guncelle, 16) = CheckBox_BioClimatic.Value
        .Cells(Guncelle, 17) = CheckBox_CamBalkon.Value
        .Cells(Guncelle, 18) = CheckBox_CamTavan.Value
        .Cells(Guncelle, 19) = CheckBox_FotoselliKapi.Value
        .Cells(Guncelle, 20) = CheckBox_Giyotin.Value
        .Cells(Guncelle, 21) = CheckBox_İsicamliSurme.Value
        .Cells(Guncelle, 22) = CheckBox_Pergola.Value
        .Cells(Guncelle, 23) = CheckBox_RuzgarKirici.Value
        .Cells(Guncelle, 24) = CheckBox_TavanPerdesi.Value
        .Cells(Guncelle, 25) = CheckBox_ZipPerde.Value
        .Cells(Guncelle, 26) = TextBox_Tarih.Value
  
    End With
    
  
  


End Sub
.rar WINPERAX SON.rar (Dosya Boyutu: 148,99 KB | İndirme Sayısı: 3)
Access Çekirgesi 
[Resim: img-cray.gif]


Son Düzenleme: 18/04/2021, 17:44, Düzenleyen: Oğuz Türkyılmaz.
Cevapla
#2
dilerim işinize yarar
ama çalışmada şöyle bir soruna rastladım, verileri metin kutularından hücrelere aktarmaya çalışırken;
.Cells(Guncelle, 3) = ComboBox_FirmaUnvani.Value bu kodda ComboBox_FirmaUnvani change olayı tetiklenip bütün verileri ilk haline döndürüyor ki aslında olmaması gerek sonuçta değişen bir şey yok bu olayın tetiklenmemesi lazım sebebini anlamadım @feraz hocam çözüm bulabilir, o nedenle bu satırı devre dışı bıraktım.
.rar WINPERAX SON_hy.rar (Dosya Boyutu: 153,67 KB | İndirme Sayısı: 2)
Cevapla
#3
(19/04/2021 17:50)berduş Adlı Kullanıcıdan Alıntı: bu kodda ComboBox_FirmaUnvani change olayı tetiklenip bütün verileri ilk haline döndürüyor ki aslında olmaması gerek sonuçta değişen bir şey yok bu olayın tetiklenmemesi lazım sebebini anlamadım @feraz hocam çözüm bulabilir,
Akşama bir bakayım abey nedenmiş.
Cevapla
#4
Berduş Hocam vakit ayırıp çözüm ürettiğiniz için çok teşekkür ederim. Güncellenen verilerin checkboxlardaki yansıması doğru yanlış şeklinde olmuş bu durumu

Kod
Sub checkboxKontrol(ByVal son As Long)
    With ThisWorkbook.Worksheets("Ana_Sayfa")
        '.Unprotect sifre
        .Cells(son, 16).Value = IIf(CheckBox_BioClimatic.Value = True, "Evet", "Hayır")
        .Cells(son, 17).Value = IIf(CheckBox_CamBalkon.Value = True, "Evet", "Hayır")
        .Cells(son, 18).Value = IIf(CheckBox_CamTavan.Value = True, "Evet", "Hayır")
        .Cells(son, 19).Value = IIf(CheckBox_FotoselliKapi.Value = True, "Evet", "Hayır")
        .Cells(son, 20).Value = IIf(CheckBox_Giyotin.Value = True, "Evet", "Hayır")
        .Cells(son, 21).Value = IIf(CheckBox_İsicamliSurme.Value = True, "Evet", "Hayır")
        .Cells(son, 22).Value = IIf(CheckBox_Pergola.Value = True, "Evet", "Hayır")
        .Cells(son, 23).Value = IIf(CheckBox_RuzgarKirici.Value = True, "Evet", "Hayır")
        .Cells(son, 24).Value = IIf(CheckBox_TavanPerdesi.Value = True, "Evet", "Hayır")
        .Cells(son, 25).Value = IIf(CheckBox_ZipPerde.Value = True, "Evet", "Hayır")
        '.Protect sifre
    End With
End Sub


kodlarıyla eğer sonuçlardaki checkbox değeri true ise evet değilse hayır şeklinde hücrelere yaz demiştik.
Güncelleme işlemi gerçekleştikten sonra checkboxlardaki hücrelere yazılan değerler doğru yanlış şeklinde sirayet etmiş. Bu durumu düzeltmek için ne yapabilirim.

[Resim: do.php?img=10923]
Access Çekirgesi 
[Resim: img-cray.gif]


Cevapla
#5
Halil hocam evet bendede dediğiniz gibi oluyor o sorunu Dim iptalComboBox_FirmaUnvani As Byte tanımladım en üste ve gerekli yerlere alttaki kodları ekledim sorun giderildi.
Bazen Excel cinslik yapıyor abey Img-grin
Güncelleyince mesaj ve toplu combo vs.. leritemizlettim tarih hariç.

Visual Basic Code
iptalComboBox_FirmaUnvani = 1
iptalComboBox_FirmaUnvani = 0
.rar WINPERAX SON_hy.rar (Dosya Boyutu: 141,53 KB | İndirme Sayısı: 2)
Cevapla
#6
Feraz hocam kod tüm o ID ye kadar ki ( 4 numaralı kaydı güncelledim ) kayıtlı bilgilerdeki Checkbox değerlerinin tamamını evet hayır dan doğru yanlış sonuçlarına çevirmiş.
[Resim: do.php?img=10924]
Access Çekirgesi 
[Resim: img-cray.gif]


Son Düzenleme: 19/04/2021, 21:37, Düzenleyen: Oğuz Türkyılmaz.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da