• DİKKAT

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

Ardışık sayılardaki Eksiklikler

Katılım
20 Nisan 2005
Mesajlar
451
A hücresi
120.01.00001
120.01.00002
120.01.00005
120.01.00006
120.01.00007
120.01.00008
120.01.00009
120.01.00010
120.01.00011
120.01.00014
120.01.00015
120.01.00016
120.01.00019

rakamlar var
B hücresine aradaki eksik rakamları yazdırabilirmisyiz.
 
Yukarıdaki verilerinizin A1 den aşağıya doğru sıralandığını kabul edersek, aşağıdaki kodu deneyin.

[vb:1:dae2d7d533]Sub ardisik()
For a = 1 To [a65536].End(3).Row
deg1 = Right(Cells(a, "a"), 5) * 1
If Cells(a + 1, "a") = 0 Then Exit Sub
deg2 = Right(Cells(a + 1, "a"), 5) * 1
If deg2 - deg1 <> 1 Then
For b = 1 To deg2 - deg1 - 1
c = c + 1
Cells(c, "b") = "120.01." & WorksheetFunction.Rept(0, 5 - Len(deg1 + b)) & deg1 + b
Next
End If
Next
End Sub
[/vb:1:dae2d7d533]
 
Yanlış işlem yapmışsınız, ekteki dosyayı inceleyin.
 
Sayın esolen,

Sayıları 120.06.00000 şeklinde değil 1200600000 şeklinde girmiş olsaydınız (ama gösterimini 120.06.00000 yapmış olsaydınız)
Sayın leventmin mükemmel çalışması her şartta çalışırdı

bu makro sadece sanırım 120.06 ile başlayan satırlarda geçerli.

Küçük bir anımsatma
 
bu makro sadece sanırım 120.06 ile başlayan satırlarda geçerli.
Eğer baştaki ifadeler değişkense bu durumda kod içindeki "120.01." yerine Left(Cells(a, 1), 7) yazılabilir.

Sn Necdet bey dikkatiniz ve uyarınız nedeniylede teşekkür ederim.
 
leventm' Alıntı:
bu makro sadece sanırım 120.06 ile başlayan satırlarda geçerli.
Eğer baştaki ifadeler değişkense bu durumda kod içindeki "120.01." yerine Left(Cells(a, 1), 7) yazılabilir.

Bu söylenenni uyguladığımda istediğim sonuçlara ulaştım

Ancak;
A 1 Hücresindeki verileri
değiştirip 120.16.00001 den başlayan eksik numaraları kontrol ettiğimde eski verileri değiştirmiyor hala 120.06 nın eksikleri kalıyor
 
değiştirip 120.16.00001 den başlayan eksik numaraları kontrol ettiğimde eski verileri değiştirmiyor hala 120.06 nın eksikleri kalıyor
Sadece en üstte sorduğunuz şekli ile bir kod önermiştim. Þimdi sorunuza yaptığınız her ilave kodun yeni baştan tasarlanması anlamına geliyor. Lütfen sorularımızı çok detaylı ve anlaşılır şekilde gerekirse bir örnek dosya eşliğinde soralım.
 
Geri
Üst