Uzunca bir metnin içindeki belli bir kelimeden sonrasını alt satıra almak

Katılım
21 Mart 2013
Mesajlar
205
Excel Vers. ve Dili
Microsoft Excel Professional Plus 2016 - İngilizce
Değerli üstatlar ve yardımsever forum üyeleri merhaba,

Yekpare şekilde upuzun bir cümle var. Bu cümle ardarda sıralanmış websitesi url'lerinden oluşuyor. Cümle içindeki her "https" ile başlayan satırı bir alt satıra almak istiyorum.

Örneklendirmek istersem eğer şu aşağıdaki cümleyi excelin satır satır ayrımasını istiyorum. (Bendeki cümle bunun 10 katı uzunluğunda.)

https://www.abnc.com.tr/ https://www.xyz.com/tr-tr/zam/enflasyon/profil/ https://www.excel.com/tr-tr/formul/

Yazacağımız bir formül ile https ile başlayanlar parçalara ayrılsın, satır satır.

https://www.abnc.com.tr/
https://www.xyz.com/tr-tr/zam/enflasyon/profil/
https://www.excel.com/tr-tr/formul/

Mümkünse formül ile yapalım eğer zor görünüyorsa makro koduda işimizi görür.

Şimdiden okuyan, yardım etmek isteyen, yardım eden herkese teşekkürler.
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
580
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Örneğinize uygun olarak formülü ayarladım. Ekteki dosyadan görebilirsiniz.
A1 hücresine metni kopyalayıp, alltaki ve B sütunundaki formülleri aşağıya doğru kopyalayın..

Örnek Dosya
 
Katılım
21 Mart 2013
Mesajlar
205
Excel Vers. ve Dili
Microsoft Excel Professional Plus 2016 - İngilizce
Merhaba, öncelikle teşekkür ederim.

Benim cümlem 19.000 küsür karaktere sahip ve A2'deki formülü uyguladığımda #Value! hatası alıyorum.
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,893
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
B1 hücresine

Kod:
="https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255))
yazıp aşağıda doğru çekiniz.

Eğer parçalama işlemi bittiğinde boş olan hücrelerde https görünmesin derseniz.

Kod:
=EĞER(UZUNLUK("https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255)))=5;"";"https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255)))
yazıp aşağıda doğru çekiniz.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,553
Excel Vers. ve Dili
Pro Plus 2021
Kod:
Sub regexp_URL()
    al = [a1]
    With CreateObject("VBScript.RegExp")
        .Pattern = "(www|http:|https:)+[^\s]+"
        .Global = True
        .IgnoreCase = True
        If .test(al) Then
            For Each Match In .Execute(al)
                sat = sat + 1
                Cells(sat, 2) = Match.Value
            Next Match
        End If
    End With
End
Kod:
Sub test()
    al = [a1]
    For Each bl In Split(al, " ")
        sat = sat + 1
        Cells(sat, 3) = bl
    Next bl
End Sub
 

Mdemir63

Altın Üye
Katılım
7 Temmuz 2006
Mesajlar
2,827
Excel Vers. ve Dili
Ofis2010 32Bit Türkçe
B1 hücresine

Kod:
="https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255))
yazıp aşağıda doğru çekiniz.

Eğer parçalama işlemi bittiğinde boş olan hücrelerde https görünmesin derseniz.

Kod:
=EĞER(UZUNLUK("https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255)))=5;"";"https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255)))
yazıp aşağıda doğru çekiniz.
Selamlar
Ali hocam
burada ki 255 sayıları formülde ne işe yarıyor açıklamanız mümkün mü?
Kısaca neden 255

Saygılar
 

Mdemir63

Altın Üye
Katılım
7 Temmuz 2006
Mesajlar
2,827
Excel Vers. ve Dili
Ofis2010 32Bit Türkçe
Ali hocam teşekkürler

Saygılar
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
580
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Rica ederim. Benim hazırladığımda niye öyle hata verdi gerçek verileri görmeden bir şey söyleyemem.

Sayın Ali bey'in formülü daha kısa ve etkili.. Onu deneyin isterseniz.

Merhaba, öncelikle teşekkür ederim.

Benim cümlem 19.000 küsür karaktere sahip ve A2'deki formülü uyguladığımda #Value! hatası alıyorum.
 
Katılım
21 Mart 2013
Mesajlar
205
Excel Vers. ve Dili
Microsoft Excel Professional Plus 2016 - İngilizce
B1 hücresine

Kod:
="https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255))
yazıp aşağıda doğru çekiniz.

Eğer parçalama işlemi bittiğinde boş olan hücrelerde https görünmesin derseniz.

Kod:
=EĞER(UZUNLUK("https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255)))=5;"";"https"&KIRP(PARÇAAL(YERİNEKOY("https"&$A$1;"https";YİNELE(" ";255));SATIRSAY($B$1:B2)*255;255)))
yazıp aşağıda doğru çekiniz.
Merhabalar,
Teşekkür ederim. Benim excel ingilizce, formülü aşağıdaki şekilde çevirdim ama gene Value hatası alıyorum. Neden bu hatayı alıyorum anlayamadım.

="https"&TRIM(MID(SUBSTITUTE("https"&$A$1;"https";REPT(" ";255));ROWS($B$1:B2)*255;255))
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
580
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Sanırım gerçek verilerinizde formülle uyuşmayan durumlar var. Gerçek verilerinizi eklerseniz, duruma göre bir çözüm yapılabilir belkide.

Merhabalar,
Teşekkür ederim. Benim excel ingilizce, formülü aşağıdaki şekilde çevirdim ama gene Value hatası alıyorum. Neden bu hatayı alıyorum anlayamadım.

="https"&TRIM(MID(SUBSTITUTE("https"&$A$1;"https";REPT(" ";255));ROWS($B$1:B2)*255;255))
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,553
Excel Vers. ve Dili
Pro Plus 2021
Merhaba, öncelikle teşekkür ederim.

Benim cümlem 19.000 küsür karaktere sahip ve A2'deki formülü uyguladığımda #Value! hatası alıyorum.
19000 küsur karaktere sahip bir hücrede 30 karakterden olsa ortalama 633 tane url vardır.
her https yi 255 tane boşlukla değiştireceksiniz, 633*(255+30)=180405 karakterle 633 satırda işlem yapacaksınız,
 
Katılım
21 Mart 2013
Mesajlar
205
Excel Vers. ve Dili
Microsoft Excel Professional Plus 2016 - İngilizce
Yardım etmek isteyen herkese teker teker özel teşekkürlerimi sunarım.

Ne yazık ki benim dosyamda formüller ve makro çalışmadı. Şirketin belgesi olduğundan ötürü paylaşmam çok uygun olmaz.

Sağlık olsun.

Sağolun, varolun.
 
Katılım
2 Nisan 2021
Mesajlar
1
Excel Vers. ve Dili
2016 Türkçe
Selam. Sitenizde yeniyim kusura bakmayın.
Word'den anlıyorum biraz ama "Değiştir" komutu ile yapamadım. Aynı sorunu yaşıyorum. Belki excel'den bana yardımcı olabilirsiniz.
Bir duayı, time code'u hazır altyazı dosyasına kopyala yapıştır şeklinde yapıştırmak istiyorum Aegisub programı ile.
Dua metni şurada: https://tr.wikishia.net/view/Mucir_Duası
Ancak her "ey koruyan." dedikten sonra enter ile alt satıra geçilmiş olması lazım ki tek tuşla altyazıyı oluşturabileyim.
Kod:
ey koruyan.SPACE
yerine
Kod:
ey koruyan.
ENTER
olmasını istiyorum.
Yardımcı olur musunuz? Teşekkürler.
 
Üst