selamlar,

Excel'de bir tablo oluşturuyorum. istediğim şu ki; tabloda bir değerin üzerine tıkladığımda, aynı değeri içeren diğer hücreleri de highlight etsin, belli etsin, rengini şapsın, gözüme soksun ya da öyle bişey işte. diğerlerini de görebileyim yani :)

nasıl yaparım acep? google amca her zamanki gibi pek içine kapanık bu tip konularda...

şimdiden teşekkürler.

 

vba işine girmen lazım. düz kullanımla o dediğin mümkün değil. bir buton koyacaksın, ona basınca tarayacak dokümanı, seçili hücrenin içeriğini bulduğu hücreleri highlight falan edecek.

ben deli olmaliyim

yok vba ile olsun zaten, normal hücre içine formül yazayım da olsun gibi bi niyetim yok. biryerde buldum bişey ama tek sütunda aratıyor ancak. ben bütün dosyada istiyorum, olmadı onu vereyim buraya modifiye edebilirseniz o da süper olur:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Lastrow = Cells(Rows.Count, "A").End(xlUp).Row
If Target.Column <> 1 Or Target.Row > Lastrow Then
Columns(1).Interior.ColorIndex = xlNone
Exit Sub
End If

Set myrange = Range("A1:A" & Lastrow)
For Each c In myrange
If c.Value = Target.Value Then
c.Interior.ColorIndex = 7
Else
c.Interior.ColorIndex = xlNone
End If
Next
End Sub

loveinaflipbook

dogrudan tiklayinca highlight etmesi yerine conditional formatting / kosullu bicimlendirme yaparsaniz olur, gayet de basit olur bence.

co2s2

evet o da kolay ama aynı anda bütün duplicate'leri highlight ediyo o zaman da. ben mesela istiyorum ki bir satırdaki bir hücreye tıkladığımda sadece onun duplicate'lerini göstersin. yoksa çok fazla birbirinin aynı olduğu hücrelerden oluşan bir tabloda çalışıyorum. dolayısı ile cond. formatting yapınca hemen hemen bütün hücreler renkleniyor, anlayamıyorum hangisi hangisinin duplicate'i...

loveinaflipbook

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Lastrow = Cells(Rows.Count, "A").End(xlUp).Row
Set myrange = Range("A1:Z50")
For Each c In myrange
If c.Value = Target.Value Then
c.Interior.ColorIndex = 3
Else
c.Interior.ColorIndex = xlNone
End If
Next
End Sub

Seklinde degistirirseniz istediginiz isi yapar. A1:Z50 dedigim yere data setinizi icine alacak hucre araligini girmeyi unutmayin.

dahicocuk

@dahicocuk süpersin! ama her hücreye tıkladığımda hata veriyor, debug'da aşağıdaki satırı işaret ediyor:

If c.Value = Target.Value Then

loveinaflipbook

Birden cok hucreye mi tikladiniz acaba? Bende calisiyor cunku hata vermeden.

dahicocuk

yok hep tek hücreye tıklamıştım. excel 2010 kullanıyorum, acaba VB dili farklı bir sürüm de sapıtıyor mu?

loveinaflipbook

Bir de soyle deneyelim. A1:J10 kismini yine degistiriyorsunuz.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Dim c As Range
For Each c In Range("A1:J10")
If c.Value = ActiveCell.Value Then
c.Interior.ColorIndex = 3
Else
c.Interior.ColorIndex = xlNone
End If
Next
End Sub

Indentation icin; pastebin.com

dahicocuk

@dahicocuk teşekkür ederim! son yazdığını yabıştırınca bu sefer oldu!

+rep :)

loveinaflipbook
1

mobil görünümden çık