Sıralı şekilde seri oluşturmak.

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,239
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selam arkadaşlar;

Userform üzerinde oluşturduğum textboxlara başlangıç ve bitiş değerleri girip girdiğim değer aralığını excelde "Zimmet" sayfasında B sütununda başlangıç ve bitiş değerleri dahil seri oluşturmak istiyorum.Tabi bu seriyi oluştururken mükerrer kayıt kontrolüde yaptırmak istiyorum.

Ã?rnek verecek olursam;

Textbox1 = 425850
Textbox2 = 425900
Textbox3 = Zimmet Tarihi
Textbox4 = Zimmetlenen Kişi

Yukarıda verdiğim değerleri girdiğimde,

1-425850 01-01-2005 Kemal KESKİN
2-425851 01-01-2005 Kemal KESKİN
3-425853 01-01-2005 Kemal KESKİN
.....

seri bitene kadar devam edecek şekilde seri üretmek istiyorum.

İyi çalışmalar dilerim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,239
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Pardon arkadaşlar,

Aşağıdaki seride

1-425850 01-01-2005 Kemal KESKİN
2-425851 01-01-2005 Kemal KESKİN
3-425852 01-01-2005 Kemal KESKİN (Arada bu kısmı atlamışım.) :kafa:
4-425853 01-01-2005 Kemal KESKİN
.....

seri bitene kadar devam edecek şekilde seri üretmek istiyorum.
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
anladığım kadarıyla bu kodun işinixi görmesi lazım.

Kod:
Private Sub CommandButton1_Click()
g = 0

For i = textbox1.Text To text2.Text
g = g + 1

Cells(i, 2) = g & "-" & i & " " & textbox3.Text & " " & Textbox4.Text

Next
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,239
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sayın isakarakus;

Verdiğiniz kodları denedim. Ama verileri tek hücrede birleştirerek aktarıyor. Benim örneğimde anlatmak istediğim bu değildi. Aşağıdaki gibi olması gerekiyor. (Yanlış sordum galiba)

A sütununa sıra no atayacak, B sütununa seri atayacak, C sütununa tarih atayacak, D sütununa da isim atayacak şekilde olmasını istiyorum.

İyi çalışmalar dilerim.
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
edit..
tamam o zaman,

Kod:
Private Sub CommandButton1_Click() 
g = 0 

For i = Textbox1.Text To Text2.Text 
g = g + 1 

Cells(g, 1) = g
Cells(g, 2) = i
Cells(g, 3) = Textbox3.Text
Cells(g, 4) = Textbox4.Text 

Next 
End Sub
cells(i,1) satırında i satır numarasını, 1 de sutun numarasını ifade eder,
yani 1,A sutunu, 2 b sutunu, 3 c sutunu 4 ise d sutununu ifade eder,
eğer başka sutunlara aktarmak istersenin bu kodları değiştirebilirsiniz.
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
merhaba,
bu kodlar size daha faydalı olacaktır.

Private Sub CommandButton1_Click()
Range("a65536").End(xlUp).Select
For i = Textbox1.Text To Text2.Text
ActiveCell.Offset(1, 0).Select

ActiveCell = g
ActiveCell.Offset(0, 1) = i
ActiveCell.Offset(0, 2) = Textbox3.Text
ActiveCell.Offset(0, 3) = Textbox4.Text
Next

End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,239
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sayın isakarakus;

Son verdiğiniz kodlarda ise istediğim sonuca ulaştım fakat bu seferde sıra numarası hatalı oldu.

İlk seriyi girdiğimde problem yok fakat ikinci seriyi girdiğimde sıra no tekrar 1 den başlıyor. Ama aslında son kaldığı yerden devam etmesi gerekiyor.

İyi çalışmalar dilerim.
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
kodu şöyle düzeltin.
[vb:1:5330c884a1]Private Sub CommandButton1_Click()
Range("a65536").End(xlUp).Select

g=activecell+1

For i = Textbox1.Text To Text2.Text

ActiveCell.Offset(1, 0).Select
ActiveCell = g
ActiveCell.Offset(0, 1) = i
ActiveCell.Offset(0, 2) = Textbox3.Text
ActiveCell.Offset(0, 3) = Textbox4.Text
g=g+1
Next

End Sub[/vb:1:5330c884a1]
g=activecell+1 ve
g=g+1
satırları eklendi
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,239
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sayın isakarakus;

Bu bölümde hata verdi. (Type Mistmatch)
Benim tablomda ilk satırda başlıklar var bundan kaynaklanmış olabilir mi?
Ã?rnek dosyam ektedir.

İyi çalışmalar dilerim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,239
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Dosyanın zipli hali ektedir.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,239
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Teşekkür ederim. :hey:
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,239
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selam arkadaşlar;

Aşağıdaki kodlarla kayıt işlemimi yapıyorum. Fakat mükerrer kayıt işlemini engelleyemedim. (Kayıtlarım D sütununda) Aşağıdaki kodda D sütununa göre nasıl bir düzeltme yapmam lazım ?


Private Sub CommandButton1_Click()
If TextBox1.Value = "" Or ComboBox1.Value = "" Or TextBox2.Value = "" Or TextBox3.Value = "" Or ComboBox2.Value = "" Or ComboBox2.Value = "" Then
MsgBox ("Kayıt ekleme işlemi için gerekli tüm bölümlere veri girmelisiniz." & Chr(10) & "Lütfen formdaki boş bıraktığınız bölümleri doldurunuz."), vbExclamation, "DİKKAT !"
TextBox1.SetFocus
Else
If TextBox2.Value > TextBox3.Value Then
MsgBox ("Adisyon başlangıç numarası bitiş numarasından büyük olamaz." & Chr(10) & "Lütfen girdiğiniz değerleri kontrol ediniz."), vbExclamation, "DİKKAT !"
TextBox2.SetFocus
Else

Sheets("ZİMMET").Select
For Each AYNI In Range("D2:D65536")
If AYNI.Value = TextBox2.Value Then
MsgBox ("Eklemek istediğiniz kayıt zaten listenizde bulunmaktadır."), vbExclamation, "DİKKAT !"
TextBox2.Value = ""
TextBox2.SetFocus
Exit Sub
End If
Next AYNI

Range("A65536").End(xlUp).Select
G = Val(ActiveCell) + 1
For i = TextBox2.Text To TextBox3.Text
ActiveCell.Offset(1, 0).Select

ActiveCell = G & "-"
ActiveCell.Offset(0, 1) = TextBox1.Text
ActiveCell.Offset(0, 2) = ComboBox1.Text
ActiveCell.Offset(0, 3) = i
ActiveCell.Offset(0, 4) = ComboBox2.Text
ActiveCell.Offset(0, 5) = "EVET"
G = G + 1
Next

Range("B2").Select
TextBox1 = ""
ComboBox1 = ""
TextBox2 = ""
TextBox3 = ""
ComboBox2 = ""
TextBox1.SetFocus
MsgBox ("Kayıt ekleme işlemi tamamlanmıştır."), vbInformation, "DİKKAT !"

End If
End If
End Sub
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Sheets("ZİMMET").Select
For Each AYNI In Range("D2:D65536")
If AYNI.Value = TextBox2.Value Then
MsgBox ("Eklemek istediğiniz kayıt zaten listenizde bulunmaktadır."), vbExclamation, "DİKKAT !"
TextBox2.Value = ""
TextBox2.SetFocus
Exit Sub
End If
Next AYNI
Yukarıdaki bölüm yerine aşağıdaki gibi deneyin.

[vb:1:a333d50c8e]say = WorksheetFunction.CountIf(Sheets("ZİMMET").columns(4), textbox2.Value)
If say > 0 Then
MsgBox ("Eklemek istediğiniz kayıt zaten listenizde bulunmaktadır."), vbExclamation, "DİKKAT !"
textbox2.Value = ""
textbox2.SetFocus
Exit Sub
End If
[/vb:1:a333d50c8e]
 
Üst