• DİKKAT

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

Sutuna 1 yazdığım anda onun satır rengini benzetme ve isim ekleme

Katılım
3 Haziran 2006
Mesajlar
33
Hangi hücreye 1 yazarsam, yazdığım anda onun satır rengini, o sutuna denk gelen 2 satırındaki renkden yaparak, İSİM YAZAN (bunun sütunu değiştiği için Q sütununa göre değil de İSİM yazısının altına) sutununa da 2 satırındaki denk gelen harfleri yazdırmak istiyorum. (Örnekte ki gibi fakat bu liste 500-600 satır olabiliyor)
şimdiden ilgilenen arkadaşlara teşekkürler
cenk
 

Ekli dosyalar

Son düzenleme:
sayfanın kod kısmına kopyalayın..ve deneyin..

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo hata
If Intersect(Target, Range("b4:k1400")) Is Nothing Then Exit Sub
If Target.Value = 1 Then
a = Target.Address
On Error Resume Next
b = Mid(a, 2, 1)
c = Mid(a, 4, 2)
Range(b & 2).Copy
Rows(c).PasteSpecial (xlFormats)
Range(b & 2).Copy
Range("q" & c).PasteSpecial (xlValues)
End If
hata:
Application.CutCopyMode = False
End Sub
 
Yazdığınız kod için çok çok teşekkür ederim, acaba buna birde; 1 yazdığımızda isim yazdığı yerde kalmayıp yazdığım 1'in alt hücresine gelmesini (sanki 1 yazıp enter yapmışım gibi) ve isimleri de Q sütuna değil de İSİM hangi hücrede ise o sütuna yazmasını sağlayabilir misiniz? (çünkü bazen Q sütununu sol tarafına başka sütunlar eklemem gerekebiliyor) Fakat bu söylediklerim çok vaktinizi alacaksa ben bu halini bile kullanabilirim.
 
vaktinizi ayırdığınız için çok teşekkürler, yazdığınız kod istediğimi yapıyor fakat apocalyt in yazdığı kod, hemen işlem yaptığı için istediğimi daha kolay yapabiliyorum. Tekrar teşekkürler
 
Sayın Süleyman bey, biraz önce şunu fark ettim ki sizin yazdığınızı daha önce oluşturduğum dosyalarımda kullanabilirim ve büyük bir iş yükünden kurtulmuş olurum, fakat yazdığınızı başka dosyalarıma nasıl kopyalayıp çalıştırabilirim?
 
"1 yazdığımızda isim yazdığı yerde kalmayıp yazdığım 1'in alt hücresine gelmesini (sanki 1 yazıp enter yapmışım gibi) " bunu anlıyamadım..bir örnek verir misiniz ??
 
Eğer hiç yazdığınız kodu kullanmazsam, B4 hücresine 1 yazıyorum, enter tuşuna basınca B5 e geliyor, fakat kod kullandığımda 1 yazıp enter a basınca Q4 hücresine gidip orda kalıyor. benim tekrar B5 hücresine gelebilmem için sol tuş ile B5 i seçmem gerekiyor. bazen 1 enter, 1 enter yaparak alt alta 1 ler yazmam gerekiyor, bu durumda aktif hücreyi her seferinde sol tuş ile değiştirmek gerekiyor.
 
Meraba. şu kodu deneyin..hem bir alt satırda kalıcaksınız hemde "İSİM" başlığı nerdeyse oraya isimler kopyalanacak...

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo hata
If Intersect(Target, Range("b4:k1400")) Is Nothing Then Exit Sub
If Target.Value = 1 Then
a = Target.Address
On Error Resume Next
b = Mid(a, 2, 1)
c = Mid(a, 4, 2)
Range(b & 2).Copy
Rows(c).PasteSpecial (xlFormats)
Range(b & 2).Copy
Cells(c, WorksheetFunction.Match("İSİM", Range("A3:Z3"), 0)).PasteSpecial (xlValues)
Cells(c + 1, b).Select
End If
hata:
Application.CutCopyMode = False
End Sub
 
Çok teşekkür ederim, tam istediğim gibi olmuş fakat satırları çoğaltınca 100. satırdan sonra benzetmeyi yapmayıp, yukarı satırlara atlıyor, bunu da düzeltmeniz mümkün mü?
 
koddaki şu satırı c = Mid(a, 4, 2)

şununla değiştirin. c = Mid(a, 4, 4)
 
Sayın Süleyman bey, biraz önce şunu fark ettim ki sizin yazdığınızı daha önce oluşturduğum dosyalarımda kullanabilirim ve büyük bir iş yükünden kurtulmuş olurum, fakat yazdığınızı başka dosyalarıma nasıl kopyalayıp çalıştırabilirim?

diğer dosyalarının kod bölümüne gir
(Alt+F11 tuşları ile)
İnsert+ userform şeklinde form ekle ve üzerine bir tane command button ekle
benim yazdığım kodun tamamını buraya kopyala
eğer yeni dosyalarında sayfa ismi farklı ise ("NISAN02") onların sayfa isimlerini kodun için de bu şekilde geçen sayfa ismi şeklinde düzenle
son olarakta çalıştığın sayfa üzerine geliştirici menüsünden düğme ekleyerek onada yeni makro ata de ve açılan kod bölümüne
Kod:
userform1.show
kodunu yaz
kolay gelsin..
 
Sanırım son bir şey daha soracağım, 2 satırından filtre yaptığımda, kod olmayan herhangi bir sayfada 1 enter yaptığımda altındaki gizli olan hücreleri atlayıp, gösterdiği hücreye rakam yazabiliyorum, örneği 5 ile 9 satırları kapalıysa 4 hücresine 1 enter yapınca aktif hücre 10. satıra gidiyor, fakat kod olan sayfada ise 4 hücresine 1 enter yapınca aktif hücre aktif hücre 4 ile 10. satır arasında kayboluyor, bunu kod olmayanda ki gibi düzeltebilir misiniz?
 
şu anlık koddaki şu satırı Cells(c + 1, b).Select

şunla değiştirin.. Cells(c , b).Select
bu ilk değer girdiğiiz hücreye dönmenizi sağlıcak..sorunuzu anladım.ancak bilgim yetersiz. sitedeki değerli üstadlarımızdan yanıt gelirse bende öğrenmiş olurum..:)
 
İşim o kadar kolaylaştı ki, artık alt satıra geçmeyi de işaretleyerek yapabilirim. Yazdığınız her şey için tekrar teşekkür ederim.
 
Geri
Üst