Metinden İstediğimiz Bir Kısmı Diğer Metin Kutusuna Aktarmak

1 2 3 4
03/04/2020, 20:32

berduş

YMtn=Split(Replace(metin, "]","[" ) ,"[")
eğer ubound(ymtn)=tek then xUst=(ubound(YMtn)+1)/2 else
xUst=ubound(YMtn)/2
For x=0 to xUst
Sondger=Sondger & " " & YMtn(2*x)
next x
03/04/2020, 20:53

accessman

evet güzel çalışıyor ellerinize sağlık
03/04/2020, 21:17

berduş

Çözülmüşlere taşıyalım mı?
Bu arada
https://accesstr.net/konu-ogrenci-sayisi...#pid167962 konusu da çözüldü mü?
03/04/2020, 21:21

accessman

evet denemelerimde doğru sonuç verdi 
muhtemelen metin ne kadar uzun olsa da içinde kaç tane köşeli parantez olsa da doğru sonuç verir diye düşünüyorum
03/04/2020, 21:27

berduş

Mantıksal olarak evet, ama unutulmuş açma yada kapama parantezleri yada doğal olarak bulunması gereken durumlar sorun cikarabilir
03/04/2020, 22:21

berduş

Function xBol(Mtn As String) As String
Dim DiziMtn() As String
Mtn = Replace(Mtn, "]", "[")
DiziMtn = Split(Mtn, "[")
xUst = UBound(DiziMtn)
If xUst = 0 Then
xBol = ""
Exit Function
End If
For x = 0 To 7 Step 2
xBol = xBol & DiziMtn(x)
Next x

End Function
modüle ekleyeceğiniz yukardaki fonksiyon işe yarayabilir, tabi isterseniz argüman kısmına opsiyonel olarak "[","]" parantezlerini de ekleyebilirsiniz
1 2 3 4