• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

user form ile ilgili sütuna kayıt ekleme

Katılım
27 Temmuz 2005
Mesajlar
54
merhaba arkadaşlar,

user form da yeni meslek alanı kayıt edildiğinde C sütundaki listenin sonuna eklemesini istiyorum
 

Ekli dosyalar

Combobox bir yerden veri almak zorunda , sabittir ve dışardan yeni veri giremezsiniz . Bunu userformda kaldırıp bir textbox yerleştirin ve kodları şu şekilde değiştirin :

Private Sub CommandButton1_Click()
On Error Resume Next

If TextBox1.Value = "" Then
MsgBox "MESLEK ALANI GİRMEDİNİZ", vbExclamation, "Eksik Bilgi Girişi"
Exit Sub
End If


Application.ScreenUpdating = False
Sheets(".xls]DATA").Select
Sat3 = [c65536].End(3).Row + 1
Cells(Sat3, "C") = TextBox1

MsgBox " Kayıt tamamlandı ve saklandı"
ActiveWorkBook.Save

Unload Me
End Sub

Bu şekilde C sütunundaki ilk boş hücreye dışardan istediğiniz veriyi girebilirsiniz .
MsgBox fonksiyonu sizce gerekiyorsa , Unload Me den once yerleştirebilirsiniz

Not: sayfa adı nedense anlamadım , kendini .xls]DATA olarak tutmakta israr ediyor. Benim yaptığım bir şey değil ve sayfa adı farklı olduğunda o farklı adı kullanmanız gerek.
 
Son düzenleme:
sayın cems,
vermiş olduğunu bilgiye çok teşekkür ederim.
ufak bir sorun var; userform kapanmadan bilgileri kaydetmiyor. Bu kaydı user form kapanmadan ve ilgili sayfa açılmadan gerçekleştirebilirmiyiz.
 
dediğiniz şekil unload me satırını sildim. form kapanmadı fakat formu sayfa üzeride gezdirdiğimde arkasında iz bırakıyor.

ilgili sayfanın görünmemesi belirtiğinix gibi excel in görünmemesi
 
Öncelikle ,
Excel'in görünümden çıkarak UserForm'un direk açılması için ; Vba kısmındaki

Modul 1 içindeki kodlar :
==================
Sub auto_open()
Application.Visible = False
meslekalanı.Show
End Sub


olarak değişmeli ...

Userform ekranda kendi başına kalacak ve excel görünmeden yapacağınız işlemler data olarak sayfaya düşecektir.

İkinci olarak Userform taslağı'nda kayıt tuşuna çift tıklayarak şu kodları yerleştirin :
======================================================
Private Sub CommandButton1_Click()
On Error Resume Next

If TextBox1.Value = "" Then
MsgBox "MESLEK ALANI GİRMEDİNİZ", vbExclamation, "Eksik Bilgi Girişi"
End If


Sheets("sayfa1").Select
Sat3 = [c65536].End(3).Row + 1
Cells(Sat3, "C") = TextBox1.Value
TextBox1.Value = ""

yanıt = MsgBox("Bilgiler Kaydedildi. Yenit Kayıt Yapmak İstiyor musunuz?", vbYesNo, "KAYIT TAMAM")
If yanıt = vbYes Then

ActiveWorkbook.Save
End If
End Sub


Son olarak da ; Aynı taslak üstündeki Çıkış tuşuna çift tıklayarak
===============================
Private Sub CommandButton3_Click()

Unload meslekalanı

MsgBox " Hoşça kalın .... !", vbExclamation
Application.Visible = True
'Application.Quit
End Sub


Kodlarını yerleştirip çalıştırınız.

Userform'daki Çıkış tuşuna basınca Userform kapanarak Excel görünüme girecek . Excel'in hiçbir koşulda görünüme gelmeden direk kapanış istiyorsanız bu durumda Vba'da ;

'Application.Quit satırının başındaki ' işaretini kaldırın ve yeniden çalıştırın. Ancak bu , dataya kolay ulaşmanızı ve bakmanızı engeller ki istediğinizin bu olduğunu sanmıyorum.

Yine aklınızda bulunmalı ki , bir kod düzeni içinde

Application.Visible = False yerleştirdiğinizde excel görüntüden çıkar ama
Application.Visible = True
satırını da kodlarda (en azından çıkış kodları arasında) yeniden kullanmazsanız excel görünüme geri gelmez ve bu excel türü açılışlarında sıkıntıya neden olur.

Unutmadan::::
================
Excel sayfasındaki userform'u açan tuş için de , sağ tıklayıp makro ata seçin ve auto_open komutunu gösterip okleyin .
 
Son düzenleme:
Geri
Üst