• DİKKAT

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

Metin içinde "isimsiz" yazanları bold yap

  • Konbuyu başlatan Konbuyu başlatan levo26
  • Başlangıç tarihi Başlangıç tarihi
Katılım
22 Nisan 2010
Mesajlar
530
Excel Vers. ve Dili
Excel 2007 TR
Merhaba;
Tablo içinde b2:b500 aralıındaki hücrelerde "isimsiz" yazanların bold olması gerekiyor. Aşağıdaki kodlar ile yaptım ama düğmeye bağlı olmaksızın enter yapınca bold olması gerekiyor.

Sub BoldStr()
Dim MyRange As Range
Dim x As Byte
For Each MyRange In Selection
x = InStr(1, LCase(MyRange), "isimsiz")
If x >= 1 Then
MyRange.Characters(Start:=x, Length:=6).Font.Bold = True
End If
Next
End Sub
 
kodlar ile yaptım ama düğmeye bağlı olmaksızın enter yapınca bold olması gerekiyor.

Veri giriş sırasında olmasını istiyorsanız eğer, kodları zaten yazmışsınız, Worksheets Change olayında yapabilirsiniz diye düşünüyorum.
 
Veri giriş sırasında olmasını istiyorsanız eğer, kodları zaten yazmışsınız, Worksheets Change olayında yapabilirsiniz diye düşünüyorum.

Necdet Bey; Şeklinde olmuyor.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyRange As Range
Dim x As Byte
For Each MyRange In Selection
x = InStr(1, LCase(MyRange), "isimsiz")
If x >= 1 Then
MyRange.Characters(Start:=x, Length:=6).Font.Bold = True
End If
Next
End Sub
 
Merhaba;
Tablo içinde b2:b500 aralıındaki hücrelerde "isimsiz" yazanların bold olması gerekiyor. Aşağıdaki kodlar ile yaptım ama düğmeye bağlı olmaksızın enter yapınca bold olması gerekiyor.

Sub BoldStr()
Dim MyRange As Range
Dim x As Byte
For Each MyRange In Selection
x = InStr(1, LCase(MyRange), "isimsiz")
If x >= 1 Then
MyRange.Characters(Start:=x, Length:=6).Font.Bold = True
End If
Next
End Sub

Merhaba
Sayfanın kod bölümüne kopyalayın ve deneyin
Kod:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B2:B50")) Is Nothing Then Exit Sub
Dim ts
ts = InStr(1, LCase(Target), "isimsiz")
If ts >= 1 Then
Target.Characters(Start:=ts, Length:=6).Font.Bold = True
End If
End Sub
 
Merhaba
Sayfanın kod bölümüne kopyalayın ve deneyin
Kod:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B2:B50")) Is Nothing Then Exit Sub
Dim ts
ts = InStr(1, LCase(Target), "isimsiz")
If ts >= 1 Then
Target.Characters(Start:=ts, Length:=6).Font.Bold = True
End If
End Sub

Merhaba,
Kodları kullandım. Küçük isimsiz yazarsa çalışıyor, büyük İSİMSİZ olunca çalışmıyor.
 

Ekli dosyalar

Merhaba,
Kodları kullandım. Küçük isimsiz yazarsa çalışıyor, büyük İSİMSİZ olunca çalışmıyor.

Merhaba
Kod:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B2:B50")) Is Nothing Then Exit Sub
Dim ts
ts = InStr(1, LCase(Target), "isimsiz")
If ts >= 1 Then
Target.Characters(Start:=ts, Length:=6).Font.Bold = True
End If
ts = InStr(1, UCase(Replace(Replace(Target, "ı", "I"), "i", "İ")), "İSİMSİZ")
If ts >= 1 Then
Target.Characters(Start:=ts, Length:=6).Font.Bold = True
End If
End Sub
Bunu deneyin.
 
İhsan bey,
İlginiz alakanız için teşekkürler ancak kodları tabloya uyarlayamadım. Daha açık bir ifadeyle yeni bir taslak ilave ettim. Burada her halükarda c sutunnda İSİMSİZ yazanlar koyu olmalı. Diğer yandan A sütununda "x" varsa b,c,d sütunlarının dolgusu olmalı.

Yani makro şart değil aslında. Koşullu biçimlendirme ilede olabiliyorsa olsun.
a sütununda x varsa b,c,d koyu olacak. B sütununda isimsiz yazıyorsa her halükarda bold olacak.
 

Ekli dosyalar

Merhaba
Sormak istediğim şu
C sütununda sadece isimsiz mi yazacak. ( büyük yada küçük olması farketmez )
 
Merhaba
Birde bu kodu deneyin lütfen
Kod:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
If Intersect(Target, Range("A2:A50")) Is Nothing Then Exit Sub
If Target = "x" Or Target = "X" Then
Range("B" & Target.Row & ":D" & Target.Row).Interior.ColorIndex = 14
Else
Range("B" & Target.Row & ":D" & Target.Row).Interior.ColorIndex = xlNone
End If
ElseIf Target.Column = 3 Then
If Intersect(Target, Range("C2:C50")) Is Nothing Then Exit Sub
If Target = "isimsiz" Or Target = "İSİMSİZ" Or Target = "İsimsiz" Then
Range("C" & Target.Row).Font.Bold = True
End If
End If
End Sub
 
Merhaba
Sormak istediğim şu
C sütununda sadece isimsiz mi yazacak. ( büyük yada küçük olması farketmez )

C sütunu dolu ali, veli, isimsiz v.s. dolu olacak
Şartlar;
a- A sütununda x varsa b:d aralığı koyu dolgulu olacak
b- C sütununda İSİMSİZ yazıyorsa her halükarda C sütunu bold olacak,

Ekte bulunan dosyaya örneklerle belirttim İhsan bey.
 

Ekli dosyalar

9. Nolu mesaja bakar mısınız bir kod yazdım.
Anlattıklarınızı yapar gibi geliyor bana
 
Evet, Teşekkürler tamamdır. Ellerinize sağlık.
 
Geri
Üst