iki bold arasını italik yapmak

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Ekli dosyada göndermiş olduğum aynı hücre içerisindeki cümlede bold olan kelimeler mevcut, yapmak istediğim bold olan kelimeler arasındaki uzunluğu italik yapmak istiyorum, yardım edecek hocalarıma şimdeden teşekkür ederim. Saygılarımla Tahsin ANARAT
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Başka bir mantıkla

İkinoktaüstüst :)) ile ilk parantez "(" e kadar olan kısmı italik yapabilirmiyiz, arkadaşlar bu benim için çok önemli, hocalarımızdan rica ediyorum. Saygılarımla.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Belki daha iyi bir yöntem bulunabşlşr ancak aşağıdaki kodu bir deneyin. Bold dışındaki tüm karakterleri italik yapar.

Kod:
Sub italikyap()
For a = 1 To [a65536].End(3).Row
For b = 1 To Len(Cells(a, "a"))
Application.ScreenUpdating = False
If Cells(a, "a").Characters(Start:=b, Length:=b).Font.Bold = False Then
Cells(a, "a").Characters(Start:=b, Length:=b).Font.FontStyle = "italik"
End If
Next
Application.ScreenUpdating = True
Next
End Sub
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Levent Hocam, sayfayı görüntüleyenler arasında isminizi görünce, cevabı sabırsızlıkla bekledim, buda güzel bir çalışma, ancak dediğim gibi saadece "die; ~; -en " vb gibi kelimelerin (buda iki bold kelime arasına denk geliyor) italik olması isteniliyor, eminim bununda bir çözümü vardır, bekleyeceğim, saygılarımla, elinize sağlık.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki kodu denermisiniz.

Kod:
Sub italikyap()
For a = 1 To [a65536].End(3).Row
For b = 1 To Len(Cells(a, "a"))
If Cells(a, "a").Characters(Start:=b, Length:=1).Font.Bold = False And ilk = 0 Then ilk = b
If Cells(a, "a").Characters(Start:=b, Length:=1).Font.Bold = True And ilk > 0 Then son = b
If ilk > 0 And son > 0 Then
Cells(a, "a").Characters(Start:=ilk, Length:=son - ilk).Font.FontStyle = "italik"
Exit For
End If
Next
ilk = 0
son = 0
Next
End Sub
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Hariiiiikasın hocam, nasıl teşekkür etsem azdır, allah sizleri başımızdan eksik etmesin, sağolun varolun, tam istenildiği gibi, Saygılar sunarım.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Rica ederim. Faydalı olduğuna sevindim.
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Afınıza sığınarak; iki kriter arasını belirtmek istesiydik, yani ilk ikinoktaüstüste ile ilk "(" açılır paranteze kadar olan kısmı italik yap deseydik, kodda nasıl bir değişiklik olurdu, (bu bölüm de benim başka bir çalışmam için lazım olacak da). İlginize şimdiden teşekkür ederim.
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Levent hocam uygulama sırasında dikkatimi çekti, en son bold olan arasını italik yapıyor, ilk bold ile ikinci bold kelime arasını italik yapmak mümkün olabilirmi, saygılarımla.
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Sayın tahsinanarat

Sayın leventm cevap vermiş ama, yine onun kodlarından yola çıkarak şu kodları denermisiniz.

Kod:
Sub Makro1()
Application.ScreenUpdating = False
On Error Resume Next
For a = 1 To [a65536].End(3).Row
z = WorksheetFunction.Find(":", Cells(a, 1))
y = WorksheetFunction.Find("(", Cells(a, 1))
If y - z > 2 Then
Cells(a, "a").Characters(Start:=z + 1, Length:=y - z - 1).Font.FontStyle = "italik"
End If
Next
Application.ScreenUpdating = True
End Sub
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Sn. AS3434 8.mesajımdaki sorumuna verdiğiniz kodlar cevap veriyor, bunun için çok teşekkür ederim.
9.mesajımdaki sorum da çözülürse, bu gece sizleri birdaha rahatsız etmeyeceğim, diğer sorularımı başka zaman soracağım :)
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Levent hocam uygulama sırasında dikkatimi çekti, en son bold olan arasını italik yapıyor, ilk bold ile ikinci bold kelime arasını italik yapmak mümkün olabilirmi, saygılarımla.
Bold kelimeler dahilmi söylüyorsunuz, bence ilk ve son halini gösteren bir örnek metin yazmanızda fayda var.
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Kodları Zaten 8. mesajınız için yazmıştım.

9.mesajınızı mantık olarak çözemedim.

a. u. Z.: (kısaltma) bilinmeyen bir zamanda anlamına gelen auf unbestimmte Zeit kelimesinin kısa yazılışı
Mesela, kırmızı yeri mi italik yapmak istiyorsunuz?
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
istenilen örnek dosya

Levent hocam istediğim örnek dosya ektedir.
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Sayın üstatlarım; örnek dosyamın devamında, ilk kelimeden sonra ":" ikinokta üstüste olmayan satırlar var, ilk boşluğu, kelimenin bitimine ":" koyabilirmiyiz
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Hocam cevaplarınızı bekliyorum, eğer 15. mesajımdaki sorumun cevabını bulursam yine işimi halletmiş olcağım, sayın AS3434'ün kodları sayesinde
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Sayın tahsinanarat

Gönderdiğim kodlar sizin işinizi görüyor.
Dosyanızdan anladığım kadarıyla 8. mesajdaki isteğiniz bu dosya ile uyuşuyor.
Sadece şu tür durumlarda sorun oluşuyor.
Kod:
[B]Aas|ge|ruch:[/B] [COLOR=blue]der; [/COLOR][COLOR=red][COLOR=blue]-[/COLOR](e)s; -gerüche[/COLOR] [B](isim)[/B] leş kokusu
Yani ":" sonra açıklama kısmında "(" varsa. (Kırmızı kısım)
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Sn. AS3434 sizin verdiğiniz kodlar işimi halledecek, ancak dediğim gibi bazı almanca kelimelerin hitamında olması gereken ":" yok, kriter olarak ilk boşluklara ":" ikinokta üst üste koymamız gerekiyor, bu kodla yapılabilir mi? nasıl.
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
İstediğiniz işlemi formül ile yapıyorum ama makro kodlamasını bir türlü yapamadım.
Formülasyonu şöyle;

=EĞER(EHATALIYSA(BUL(":";A1));YERİNEKOY(A1;" ";":";1);A1)

Makro ile olmak zorunda, çünkü formülle yapınca "bold" biçimlemeler kayboluyor.
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Sn. Leventm, AS3434 sizleri yorduğum için kusura bakmayın, her ikinize de çok teşekkür ediyorum, hayırlı geceler diliyorum, Saygılar Tahsin ANARAT
 
Üst