DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Önceki kod cevabımı güncelledim, sayfayı yenileyerek kontrol ediniz.
Sub SON_KELİME()
For sat = 1 To Cells(Rows.Count, "A").End(3).Row
Set brnn = Cells(sat, "A").Find(" ", , , xlPart)
If Not brnn Is Nothing Then
brn = WorksheetFunction.Search(" ", VBA.StrReverse(brnn), 1)
Cells(sat, "B") = Mid(Cells(sat, "A"), Len(Cells(sat, "A")) - brn + 2, brn)
Cells(sat, "A") = Mid(Cells(sat, "A"), 1, Len(Cells(sat, "A")) - brn)
Else
Cells(sat, "B") = Cells(sat, "A"): Cells(sat, "A") = ""
End If
Next: brnn = Empty
MsgBox "İşlem tamamlandı.", vbInformation, "...::... Ö. BARAN ...::..."
End Sub
15 nolu mesajda yazdığım ktf doğru cevabı vermesi lazım.![]()
cc şeklinde başlayan satırı ve bir altındaki boş satırı silebilirsiniz.
Ben silmeyi unutmuşum.
Kolay gelsin.
.
@Orion1 cahilliğimi mazur gör, ben onu uygulayamadım, beceriksizlik ve iş bilmezlik işte![]()
![]()
Teşekkürler inceledim. Alt satırlara da A1 den kestiği son kelimeyi uyguluyor
![]()
Function evrendondur(ByRef deg As Variant)
Dim say As Byte
deg = VBA.StrReverse(deg)
say = InStr(1, deg, " ")
deg = Left(deg, say - 1)
evrendondur = StrReverse(deg)
End Function
Runtime error 9 hatası aldım
Modüldeki KTF yi aşağıdaki ile değiştiriniz.
Kod:Function evrendondur(ByRef deg As Variant) Dim say As Byte deg = VBA.StrReverse(deg) say = InStr(1, deg, " ") deg = Left(deg, say - 1) evrendondur = StrReverse(deg) End Function
Sayfa adını Set k = Sheets("Sayfa2") kendinize göre düzenlediniz mi?
Sub ayir()
Set k = Sheets("Sayfa1")
sat = 1
For a = 1 To k.Range("A65500").End(3).Row
ad = Split(k.Cells(a, "A"), " ")
ReDim ad1(UBound(ad) - 1)
For b = LBound(ad) To UBound(ad) - 1
ad1(b) = ad(b)
Next
k.Cells(sat, "A") = Join(ad1, " ")
k.Cells(sat, "B") = ad(UBound(ad))
sat = sat + 1
Next
End Sub
=[COLOR="red"]EĞER[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]="";"";[COLOR="red"]EĞER[/COLOR]([COLOR="red"]ESAYIYSA[/COLOR]([COLOR="red"]BUL[/COLOR](" ";[COLOR="red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);1));[COLOR="red"]PARÇAAL[/COLOR]([COLOR="red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);[COLOR="red"]BUL[/COLOR]("|";[COLOR="red"]YERİNEKOY[/COLOR]([COLOR="red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);" ";"|";[COLOR="red"]UZUNLUK[/COLOR]([COLOR="red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]))-[COLOR="red"]UZUNLUK[/COLOR]([COLOR="red"]YERİNEKOY[/COLOR]([COLOR="Red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);" ";"")));1)+1;255);[B][COLOR="Blue"]A1[/COLOR][/B]))
=[COLOR="Red"]YERİNEKOY[/COLOR]([COLOR="Red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);" "&C1;"")
Tekrar merhaba.
Sayın sonageldik, bence bu işlem için kod kullanmaya hiç gerek yoktu ama neyse sonuca ulaşıldı zaten.
Ancak formül kullanarak çözüm önerisiyle ilgili şunu söyleyeyim:
-- 9 numaralı cevapta önerdiğim aşağıdaki formülü C1 hücresine uygulayın,.-- B1 hücresine de aşağıdaki formülü uygulayın,Kod:=[COLOR="red"]EĞER[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]="";"";[COLOR="red"]EĞER[/COLOR]([COLOR="red"]ESAYIYSA[/COLOR]([COLOR="red"]BUL[/COLOR](" ";[COLOR="red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);1));[COLOR="red"]PARÇAAL[/COLOR]([COLOR="red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);[COLOR="red"]BUL[/COLOR]("|";[COLOR="red"]YERİNEKOY[/COLOR]([COLOR="red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);" ";"|";[COLOR="red"]UZUNLUK[/COLOR]([COLOR="red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]))-[COLOR="red"]UZUNLUK[/COLOR]([COLOR="red"]YERİNEKOY[/COLOR]([COLOR="Red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);" ";"")));1)+1;255);[B][COLOR="Blue"]A1[/COLOR][/B]))-- her iki formülü listeniz boyunca kopyalayın,Kod:=[COLOR="Red"]YERİNEKOY[/COLOR]([COLOR="Red"]KIRP[/COLOR]([B][COLOR="Blue"]A1[/COLOR][/B]);" "&C1;"")
-- sonucun sabit kalması için B ve C sütununda formül uygulanmış alanı kopyalayıp, DEĞER olarak yapıştırın
-- A sütununu silin.
İsteğinizin formül ile elde edilmiş sonucu aynen istediğiniz gibi olacaktır.
.
Son kelimeleri aşağı doğru aldı ama aldığı yerde kalan kelimeleri kesmedi, makroya ilave yapmak lazım sanırım
=SOLDAN(A1;UZUNLUK(A1)-UZUNLUK(C1)-1)