• DİKKAT

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

Belirli bir aralığı belirli bir değer ile doldurmak

Katılım
22 Ocak 2014
Mesajlar
62
Excel Vers. ve Dili
microsoft office 2010 pro
Arkadaşlar merhaba!

Örneğin ; 100 hücreden oluşan "A" sütununda,karışık sıralanmış şekilde "A" harfi yazıyor ve bu "A" harflerinin arasında(A dan A ya) karışık rakamsal değerler var yalnız her iki "A" arasında ortak bir "5" rakamsal değeri var.
Şimdi ben bu "A" değerini yukarıdan aşağıya "5" değerine kadar "A" harfi ile nasıl doldurabilirim.Dolayısı ile arada kalan(A dan 5 e kadar) diğer rakamsal değerler de "A" harfi olacak.Şimdiden teşekkürler..
 
Örnek dosya ekleyiniz.
 
Merhaba,

Sorunuz pek net değil, herkes farklı düşünebilir.

Bir kaç örnek gösterin, A'dan A'ya ne demek örneğin. Bu A2:A10 aralığı mı dır örnek olarak, yoksa hücre içinde "A12345A" gibi bir değer mi?
Ne bileyim işte detay.
 
A B C D
1 a
2 1
3 4
4 9
5 5
6 3
7 a
8 8
9 6
10 7
11 5
12 9
13 a

Yukarıdaki gibi , A1 A5 ve A7 A11 arasında(a değerinden 5 değerine kadar) "a" harfi yazacak.

yani aşağıdaki gibi.

A B C D
1 a
2 a
3 a
4 a
5 5
6 3
7 a
8 a
9 a
10 a
11 5
12 9
13 a


Bu 13 satırlık değerler aynı şekilde örneğin 500 satır devam ediyor ve her iki "a" değeri arasında kesinlikle "5" değeri var.Ben 500 satır boyunca bütün "a" değerlerini sonrasındaki "5" değerine pratik bir şekilde nasıl yazdırabilirim? Umarım anlaşılır olmuştur.Şimdiden teşekkür ederim..
 
Bu kodları dener misiniz?
Kod:
Sub cevir()
j = [A65500].End(3).Row
For i = 1 To j
If Cells(i, 1) = "a" Then
Do Until Cells(i, 1).Value = 5
Cells(i, 1).Value = "a"
If i = j Then End
i = i + 1
Loop
End If
Next
End Sub
 
Bu da farklı bir versiyonu olsun;

Kod:
Sub Emre()
    Dim i%
    For i = 1 To Range("A65536").End(3).Row
        If Cells(i, 1) = 5 Then
            i = i + 1
        End If
        Do
            Cells(i, 1).Value = "a"
        Loop While Cells(i, 1) = 5
    Next i
    i = Empty
End Sub
 
Yukarıda verdiğim koddaki "a" değerlerini "A" olarak değiştiriniz.
 
"a" yı "A" yaptım fakat eklediğim dosyayı örnek alırsak , A18 ile A24 , A24 ile A29 ve A36 ile A38 arasıda "A" oldu(yani "A" ile "A" arası). Bunu sadece "A" ile "5" değeri arası olacak şekilde şartlandırabilirmiyiz? Saygılarmla..
 
Kod çorba gibi oldu ma gönderdiğiniz dosya için işe yarıyor :)
Kod:
Sub cevir()
j = [A65500].End(3).Row
For i = 1 To j
On Error Resume Next
a = WorksheetFunction.Match("A", Range("A" & i + 1 & ":A500"), 0)
b = WorksheetFunction.Match(5, Range("A" & i + 1 & ":A500"), 0)
If a < b Then GoTo tmm
If Cells(i, 1) = "A" Then
Do Until Cells(i, 1).Value = 5
Cells(i, 1).Value = "A"
If i = j Then End
i = i + 1
Loop
End If
tmm: Next
End Sub
 
Eyvallah üstad eline sağlık.Yalnız "A500" den sonra hepsi "A" değerini aldı.

a = WorksheetFunction.Match("A", Range("A" & i + 1 & ":A500"), 0)
b = WorksheetFunction.Match(5, Range("A" & i + 1 & ":A500"), 0)

Ben de yukarıdaki "A500" değerlerini arttırdım ve sorun çözülmüş oldu.Bir de en sonda kesinlikle "5" olacak yoksa sonrası da "A" oluyor.

Emeğine sağlık üstad.Teşekkür ettim..
 
Koddaki
Kod:
If a < b Then GoTo tmm
kısmını
Kod:
If a <[COLOR="Red"]=[/COLOR] b Then GoTo tmm
olarak değiştirirseniz en sondaki A'dan sonra işlem yapmaz.
 
Geri
Üst