• DİKKAT

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

Belirlenen hücredeki ilk veriye göre tasnif.

  • Konbuyu başlatan Konbuyu başlatan ahzola
  • Başlangıç tarihi Başlangıç tarihi
Katılım
17 Ekim 2011
Mesajlar
490
Excel Vers. ve Dili
Excel 2003 - Türkçe
Merhabalar

Aşağıdaki izahatlar dahilinde bir makro istemekteyim.

B2 ye yazılan veri her ne olursa olsun
C2 ye "ilk" yazacak

B sütunun diğer satırlarında
B2 deki verinin aynısı var ise şayet,
C sütununda karşısına yine "ilk" yazacak

B sütununda B2 de ki verinin haricinde her ne olursa olsun
C sütununda karşısına "diğer" yazılacak.

C sütununda "ilk" yazıyor ise D sütununda karşısına "erken" yazacak
C sütununda "diğer" yazıyor ise D sütununda karşısına "geç" yazacak

Umarım aydınlatıcı olmuştur.
Yardımlarınızı bekliyorum

Saygılarımla.
 

Ekli dosyalar

Merhabalar

Aşağıdaki izahatlar dahilinde bir makro istemekteyim.

B2 ye yazılan veri her ne olursa olsun
C2 ye "ilk" yazacak

B sütunun diğer satırlarında
B2 deki verinin aynısı var ise şayet,
C sütununda karşısına yine "ilk" yazacak

B sütununda B2 de ki verinin haricinde her ne olursa olsun
C sütununda karşısına "diğer" yazılacak.

C sütununda "ilk" yazıyor ise D sütununda karşısına "erken" yazacak
C sütununda "diğer" yazıyor ise D sütununda karşısına "geç" yazacak

Umarım aydınlatıcı olmuştur.
Yardımlarınızı bekliyorum

Saygılarımla.


Aşağıdaki kodları deneyebilirsiniz.

Kod:
Sub tasnif()
Dim deger As String
deger = Range("b2").Text
For b = 2 To [b65536].End(3).Row
If Cells(b, "b") = deger Then
Cells(b, "C") = "ilk"
Cells(b, "D") = "erken"
Else
Cells(b, "C") = "diger"
Cells(b, "D") = "gec"
End If
Next
End Sub
 
Çok teşekkür ederim
Mahmut Bey
ellerinize sağlık.

Hoşgörünüze sığınarak
küçük bir makro daha istesem

G sütununda "elma" var ise H sütununda karşısına "manav"
G sütununda "nohut" var ise H sütununda karşısına "bakliyat"
G sütununda "fincan" var ise H sütununda karşısına "züccaciye"
..................
..................
ilerleyecek şekilde.

boşluklarını ben doldururum.

Eğer yukarıdaki makro ile aynı
butondan çalışsırsa çok süper olur
olmazsa şayet ayrı çalışsada olur.

saygılarımla.
 
Kod:
Sub meslekler()
For b = 2 To [g65536].End(3).Row
Cells(b, "H") = meslek(Cells(b, "G").Text)
Next
End Sub
Function meslek(urunadi As String) As String
Select Case urunadi
Case "elma"
meslek = "manav"
Case "nohut"
meslek = "bakliyat"
Case "fincan"
meslek = "züccaciye"
'... Bu şekilde devam ettirirsiniz.
Case Else
meslek = "TANIMSIZ"
End Select
End Function
 
Çok teşekkür ediyorum
Mahmut Bey

herşeyin gönlünüzce olması dileğiyle
iyi geceler.
 
Tekrardan Merhaba.

Sayın Kök

Makromuzda dışarıdan gelen verilerde
problem çıkıyor.

Gözlemlediğim kadarı ile buna verilerin önündü ve arkasındaki boşluklar sebep
oluyor.
Boşlukları değer olarak algılıyor ve
İşlem yapmıyor
yanlış yapıyor
yada TANIMSIZ ibaresini kullanıyor.

buna nasıl bir çözüm getirebiliriz acaba?
 
Tekrardan Merhaba.

Sayın Kök

Makromuzda dışarıdan gelen verilerde
problem çıkıyor.

Gözlemlediğim kadarı ile buna verilerin önündü ve arkasındaki boşluklar sebep
oluyor.
Boşlukları değer olarak algılıyor ve
İşlem yapmıyor
yanlış yapıyor
yada TANIMSIZ ibaresini kullanıyor.

buna nasıl bir çözüm getirebiliriz acaba?

Eğer boş hücrelerde işlem yapmasını istemiyorsanız aşağıdaki if bloğunu kullanabilirsiniz. Eğer 'değer' boş değilse aşağıdaki kodları çalıştır anlamına gelir.
Bir deneyin, sıkıntı olursa dosya üzerinde bakarız. İyi çalışmalar.

Kod:
if deger <>"" then
...
...
...
end if
 
Alakanız için çok çok teşekkür ederim
Sayın Kök

Dosyaya boşluk sil makrosu ilave ederek sorunu
hallettim.

Hoşgörünüze sığınıyorum.
Bu formülümüzü makroya
çevirebilirmiziniz acaba?
=IF(A1="ithal";0,5;IF(A1="yerli";1;IF(A1="karma";1 ,5;A1)))

Sizin yazdığınız kodlar ile ile sayfanın başka bir bölümünde kullanacağım.
Foruma başkasının başlığına yazdım lakin gören olmadı henüz.
 
Özür dilerim

formülde A1 geçiyor ama ben komple A sütununda çalışmasını istiyorum
Yazacağı yerde B olsun.
 
Kod:
Sub egerkdolari()
For a = 1 To Range("a65536").End(3).Row
If Cells(a, "A") = "ithal" Then
Cells(a, "b") = 0.5
ElseIf Cells(a, "A") = "yerli" Then
Cells(a, "b") = 1
ElseIf Cells(a, "A") = "karma" Then
Cells(a, "b") = 1.5
Else
Cells(a, "b") = Cells(a, "a").Text
End If
Next
End Sub
 
Sayın Kök
Ellerinize sağlık.
Çok ama çok teşekkür ediyorum.
Allah Razı olsun.

Makroya hakim olduğunuz aşikar.
Eğer bilginiz dahilinde ise bu linkteki konuma
yardım edebilirseniz müteşekkir olurum.
şayet elinizden gelirse.
iyi akşamlar diliyorum.

http://www.excel.web.tr/f48/otomatik-makro-yazdyrmak-icin-klavuz-makrosu-t123507.html


Başlğımız Sn Mahmut Kök
sayesinde amacına ulaşmıştır.

sevgi ve saygılarımla
 
Geri
Üst