İki Aralık Arasında Sıra Numarası Vermek

1 2
26/03/2014, 15:38

mesutyagmur

Merhaba

Aşağıdaki kodla ilgili bir sıkıntım var. Başlangıç numarası olarak 000001 verildiğinde 2 olarak devam ediyor. Nasıl 000002 olarak devam edip gitmesini sağlayabilirim. Yardımcı olabilirmisiniz?


Private Sub Komut50_Click()
DoCmd.RunCommand acCmdSaveRecord
i = [Forms]![kocan]!BaşlangıcNo
a = [Forms]![kocan]!BitişNo

For m = i To a
Me.Metin51.Value = i
With DoCmd
.SetWarnings False
.RunSQL "insert into cek(koçanno,çekno)" & " select [Forms]![KOCAN]!Kocanno,[Forms]![KOCAN]![metin51].value "
.SetWarnings True
i = i + 1
End With

Next
MsgBox ("Çek Tablosu Oluşturuldu.")
End Sub
26/03/2014, 15:42

akdemir1

merhaba,

For m = i To a

buradaki m "sayaç" anlamında değilmi
26/03/2014, 15:51

mesutyagmur

Evet. Sayaç
26/03/2014, 16:15

akdemir1

Tam konuya hakim değilim ama

i = [Forms]![kocan]!BaşlangıcNo.text
a = [Forms]![kocan]!BitişNo.text

diye yazsak o alanlara yazılan rakamları tam olarak okurmu acaba bi denemek lazım
26/03/2014, 18:56

ozanakkaya

Uygulamanızı ekleyebilir misiniz?
Kodu aşağıdaki ile değiştirebilir misin?

DoCmd.RunCommand acCmdSaveRecord
i = [Forms]![kocan]!BaşlangıcNo
a = [Forms]![kocan]!BitişNo
For m = i To a
Me.Metin51.Value = i
If Len(i) = 1 Then
Metin51 = "00000" & i
ElseIf Len(i) = 2 Then
Metin51 = "0000" & i
ElseIf Len(i) = 3 Then
Metin51 = "000" & i
ElseIf Len(i) = 4 Then
Metin51 = "00" & i
ElseIf Len(i) = 5 Then
Metin51 = "0" & i
ElseIf Len(i) = 6 Then
Metin51 = i
ElseIf Len(i) = 7 Then
MsgBox ("Koçan No 6 haneye ulaştığı için " & i - 1 & " sayısında bitirildi")
Exit Sub
End If
With DoCmd
.SetWarnings False
.RunSQL "insert into cek(koçanno,çekno)" & " select [Forms]![KOCAN]!Kocanno, [Forms]![KOCAN]!Metin51"
.SetWarnings True
i = i + 1
End With
Next
MsgBox ("Çek Tablosu Oluşturuldu.")
27/03/2014, 13:03

mesutyagmur

Teşekkürler. Ellerinize Sağlık. Hallettim.
1 2