FORMÜLLÜ HÜCREYİ KISMEN KOYU YAPMAK

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhaba Arkadaşlar,
Kısmen metin kısmen formül ile birleştirilen veri elde edilen bir hücrede metin kısmının NORMAL, formül ile elde edilen kısmın KOYU olmasını sağlamak mümkün müdür ?
örneğin B1 hücresi
="UEFA sıralamasında Arnavutlukun yeri : "&KAÇINCI(A1;C1:C5;0)
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Formül ile yapılması mümkün değil ama dilerseniz örnek dosya eklerseniz makro ile yapılabilir.
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
teşekkür ederim askm üstadım. hemen ekliyorum dosyayı
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.
Bence, belgede başka makro kullanılmıyorsa sadece bu işlem için makro oluşturmak yerine;
>> D1 hücresine, hücre hizalamasını SAĞa olarak ayarlayıp, =A1&" : UEFA sıralamasındaki yeri : " formülünü uygulamak,
>> E1 hücresinin yazıtipini KOYU olarak ayarlayıp, =KAÇINCI(A1;C1:C5;0) formülünü uygulamak,
>> Bu iki hücrenin arkaplan rengini aynı yapıp aralarına, hücre arkaplan rengiyle aynı renkte kenarlık uygulamak
en pratik çözüm olur.
.
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Ömer BARAN üstadım ilginize teşekkür ediyorum. 2. yol olarak tavsiyenizi de dikkate alacağım. sağlıcakla kalın.
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Sayfa kod bölümüne aşağıdaki kodları ekleyin.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Set Rng = Range("C1:C" & Cells(Rows.Count, "C").End(xlUp).Row)
say = Application.Match(Range("A1").Value, Rng, 0)
kelime1 = "UEFA sıralamasında " & Range("A1") & "yeri : "
Range("B1") = kelime1 & say
Range("B1").Characters(Len(kelime1), 2).Font.Bold = True
Application.ScreenUpdating = True
End Sub
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
askm üstadım çok çok teşekkür ediyorum. Formüllü kısmı koyulaştıran çok harika bir kod oldu. Müthiş bir şey bu.
Acaba bir de Formüllü kısmı aynen burakıp, Formüllü olmayan kısmı koyulaştırmak mümkün mü ?
Ben epeyce kurcaladım ama beceremedim :(
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Aşağıdaki şekilde değiştirin
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Set Rng = Range("C1:C" & Cells(Rows.Count, "C").End(xlUp).Row)
say = Application.Match(Range("A1").Value, Rng, 0)
kelime1 = "UEFA sıralamasında " & Range("A1") & " yeri : "
Range("B1") = kelime1 & say
Range("B1").Characters(1, Len(kelime1)).Font.Bold = True
Application.ScreenUpdating = True
End Sub
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
askm üstadım çok çok teşekkür ederim. Mükemmel. Allah tuttuğunuz altın etsin.
Üstadım, bu kodu B sütununda 2.satırdan aşağıya doğru 750. satıra kadar her satırda çalışacak şekilde düzenlenmesi mümkün müdür ! yoksa sadece 1 hücrede mi çalışabilir !
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Belirttiğiniz şekilde örnek eklerseniz C deki veriler sabit mi kalacak. 3-5 satırlık bir örnek ekleyin kodda düzeltme yapayım.
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:A65536")) Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Application.EnableEvents = False
Cells(Target.Row, 2).Font.Bold = False
Set Rng = Range("C1:C" & Cells(Rows.Count, "C").End(xlUp).Row)
say = Application.Match(Target.Value, Rng, 0)
kelime1 = "UEFA sıralamasında " & Target.Value & " yeri : "
Cells(Target.Row, 2) = kelime1 & say
Cells(Target.Row, 2).Characters(1, Len(kelime1) - 1).Font.Bold = True
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
üstad askm şahanesin vesselam. çok çok teşekkür ediyorum.
 
Üst