Koşullu Makro Çalıştırma...?

Katılım
30 Mart 2008
Mesajlar
7
Excel Vers. ve Dili
xp
Excelseverlere merhaba :)
Bir türlü çözemediğim küçük bi sorunum var, bilgi ve ilginize sığınıyorum:
Örnek dosyadaki A2 hücresi boş diyelim. buraya 1 girdiğimizde "MAKROLU" veya "MAKROSUZ" olarak tabloyu girilen rakama göre sıralasın istiyordum. her iki şekilde de yapamadım. ancak manuel olarak, en basit yöntemle makro kullanıp tabloya rakamları girdikten sonra sıralayabiliyorum. 2 şekilde de olabilir:
1. A sütununa girilen rakama göre, örneğin A2 eşit değilse sıfıra "sırala" adlı makroyu çalıştır... gibi
2. makrosuz olarak, her rakam girildiğinde, rakama göre kendisi nasıl sıralama yapar

umarım ifade edebildim. yardımcı olamasanız da, yine de teşekkürler
ve şuana kadarki tüm emekleriniz için hepinize ayrıca teşekkür ederim
 
Son düzenleme:

N.Ziya Hiçdurmaz

Özel Üye
Katılım
28 Nisan 2007
Mesajlar
2,218
Excel Vers. ve Dili
Office 2013 TR / 32 Bit
Yanıt

Sayfa kod bölümüne uygulayınız
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A2:A1000]) Is Nothing Then Exit Sub
If [A2] > 1 Then
[A2:B500].Sort Key1:=[A2], ORDER1:=xlAscending
End If
End Sub
 
Katılım
30 Mart 2008
Mesajlar
7
Excel Vers. ve Dili
xp
Çok teşekkür ederim. Sorun bir anlamda çözüldü ve işe yarıyor. Ancak A sütunundaki diğer rakamlara göre değil de, A2 hücresine girilen rakamı dikkate alıyor. diğerlerine ne yazarsam yazayım, a2ye girilen rakamdan sonra yapıyor sıralamayı... Ya da şöyle ifade edeyim: A3'e karşılık gelen kişi sonradan 10 puan daha alıyor diyelim ya da sırası değişiyor ve 3 iken 2ye yükseliyor.. Bu durumda değişiklik yapıyoruz ancak sıralama değişmesi gerekirken, bu noktada formül işe yaramıyor.

İlginç oldu, yine de çok teşekkür ederim.
Sizden çok şey istemiş gibi olduysam özür dilerim

Sizin için belki küçük, ama benim için gerçekten büyük bir adım :)
 
Son düzenleme:

N.Ziya Hiçdurmaz

Özel Üye
Katılım
28 Nisan 2007
Mesajlar
2,218
Excel Vers. ve Dili
Office 2013 TR / 32 Bit
Yanıt

Diğer hücrelerdede çalışması için
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A2:A1000]) Is Nothing Then Exit Sub
If [COLOR="Blue"]Target [/COLOR]> 1 Then
[A2:B500].Sort Key1:=[A2], ORDER1:=xlAscending
End If
End Sub
 
Katılım
30 Mart 2008
Mesajlar
7
Excel Vers. ve Dili
xp
Evvet!!.. Şimdi oldu. Bir kez daha teşekkür ederim. Sorunsuz çalışıyor.
 

N.Ziya Hiçdurmaz

Özel Üye
Katılım
28 Nisan 2007
Mesajlar
2,218
Excel Vers. ve Dili
Office 2013 TR / 32 Bit
Bişey değil
 
Üst