• DİKKAT

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

Veritabanı Kayıt Sorunu

Katılım
13 Ocak 2008
Mesajlar
142
Excel Vers. ve Dili
2003 office
arkadaşlar dosyada userformdan saydaya kayıt yapmak istediğim de yeni kayıt 2 satıra yazılıyor istediğim yeni kayıtın boş olan sayıra yazılması ama yapamadım, aynı dosyada değiştir işlemi yapılabiliyor.

Dosya ekte şimdiden teşekkürler
 

Ekli dosyalar

.

kaydet deki vormulune bunu denermısın.


e = s1.[e65536].End(3).Row + 1
 
Merhaba,


Yapmış oldugunuz bu makrodaki e+1 komunutu neden koydunuz
Cells(e + 1, "B") = ComboBox1.Text

ordaki +1 kalıdırıp

Cells(e , "B") = ComboBox1.Text olarak denermisiniz
sanırım benım pc sorun var ben sizin userform1 ınızı acamıyorum oyuzden test edemedım
ılk mesajımdaki codu yazdıktan sonra

Cells(e , "B") = ComboBox1.Text olarak dıger codları degıstırmenızı tavsıye ederım.
 
userformu makro4 olduğu için açamıyo olabilirsiniz silerseniz açılır
 
Yanıt

Senın kodlar duzgun calısıyor 2 satırdan baslıyıp alta dogru bos satırları yenı kayıtlar yapıyor yanlız sogle bır sorun var
lıstbox ında bu gozukmuyor eger bende farklı calısmıyorsa bu sekılde lıstbox ta hepsını gormek ıstıyorsan asagıdakı kırmızı ıle boyadıgım yerlerı degıstırıp denermısın.


Private Sub UserForm_Initialize()
ComboBox1.RowSource = "1!b2:b5000" & Sheets("1").Cells(65536, "A").End(xlUp).Row
ListBox1.RowSource = "1!A2:Z5000" & Sheets("1").Cells(65536, "A").End(xlUp).Row
 
sadece kaydet kodu çalışmıyor b sütununda satır dolu olduğu halde dolu olan satırın üstüne yeni kayıtı yapıyor böylelikle eski kayıttta silinmiş oluyor

E = s1.[e65536].end(3).row + 1
bu şekilde yapıtığımda ise satırlara 2 satır arayla kayıt yapıyor.
 
...

Sende farklı bende farklı nasıl calısıyor anlıyamadım
yazmıs oldugun asagıdaki kodu sılıp

Dim X1 As Long, Y1 As Long, Y2 As Long, X2 As Long
Dim CX As Double, CY As Double
Dim MyCtrl As Control
X1 = Application.Width
Y1 = Application.Height
X2 = Me.Width
Y2 = Me.Height
CX = X1 / X2
CY = Y1 / Y2
Me.Width = X1
Me.Height = Y1
For Each MyCtrl In Me.Controls
MyCtrl.Top = MyCtrl.Top * CY
MyCtrl.Left = MyCtrl.Left * CX
MyCtrl.Width = MyCtrl.Width * CX
MyCtrl.Height = MyCtrl.Height * CY
On Error Resume Next
MyCtrl.Font.Size = MyCtrl.Font.Size * CY
On Error GoTo 0
Next

Dim sat As Long, i As Long
sat = Application.ExecuteExcel4Macro("COUNTA('" & ThisWorkbook.Path & "\[Unvan Bilgileri.xls]1'!C53)")
For i = 2 To sat
deg = Application.ExecuteExcel4Macro("'" & ThisWorkbook.Path & "\[Unvan Bilgileri.xls]1'!R" & i & "C53")
If deg <> "" Then
ComboBox3.AddItem deg
ComboBox4.AddItem deg
End If
Next


Bu kodda da degısıklık yapıp denermısın
Private Sub UserForm_Initialize()
ComboBox1.RowSource = "1!b2:b5000" & Sheets("1").Cells(65536, "A").End(xlUp).Row
ListBox1.RowSource = "1!A2:Z5000" & Sheets("1").Cells(65536, "A").End(xlUp).Row

cunku yazmıs oldugun o kodları userform1 acılması ıcın sılıyorum tahmınımce orda bı sorun cıkıcak ıkımızın farkı bu dıye tahmın edıyorum.
 
E sütununda bazen veri oluyor.Bazen olmuyor.
Böyle satır sayısını alacağınız sütunlardaki hücrelere mutlaka veri girin.Bunu sorgulayın.Bu hücreye mutlaka veri girn diye.
Mesela sizin dosyanızda e sütunu daki ilgili satırdaki hücre boş.Tabiiki normal olarak 1 satır aşağı alıyor.kayıt diğer satırın üstüne yapılıyor.
Ama sizin için satır sonu alabileceğiniz sütun B sütunu.
B sütununu niye lamdını baz olarak onu anlamadım.
Kodunuzu aşaığıdaki ile değiştiriniz.:cool:
Kod:
e = s1.[[B][COLOR="Red"]B[/COLOR][/B]65536].End(3).Row
 
.

Ben butun verılerı gırdıkten sonra kaydet dıyordum o yuzden bende calısıyordu ozaman hocam sagolun ben bunu dusunemedım.
 
hata veriyo
ListBox1.RowSource = "1!A2:Z5000" & Sheets("1").Cells(65536, "A").End(xlUp).Row
ComboBox1.RowSource = "1!b2:b5000" & Sheets("1").Cells(65536, "A").End(xlUp).Row
bu kodları silince düzeliyo
 
hata veriyo
ListBox1.RowSource = "1!A2:Z5000" & Sheets("1").Cells(65536, "A").End(xlUp).Row
ComboBox1.RowSource = "1!b2:b5000" & Sheets("1").Cells(65536, "A").End(xlUp).Row
bu kodları silince düzeliyo
aaahhhh ,aaaahhhh serdarinho........!
Kod:
ListBox1.RowSource = "1!A2:Z" & Sheets("1").Cells(65536, "A").End(xlUp).Row
ComboBox1.RowSource = "1!b2:b" & Sheets("1").Cells(65536, "B").End(xlUp).Row
 
hepiniz çok sağolun oldu kaydediyo inşallah sonra sorun çıkarmaz emeği geçen herkese teşekkürler
 
Geri
Üst