Bu öğretici, sağdan metin çıkarmak için Sağ VBA işlevinin nasıl kullanılacağını gösterecektir.
Sağ İşlev
VBA Sağ işlevi Son n Karakter
VBA Right işlevi, bir dizeden son n karakteri döndürür:
123456 | Alt SağÖrnek_1()MsgBox Right("ABCDEFGHI", 4) 'Sonuç: "FGHI"MsgBox Right("ABCDEFGHI", 2) 'Sonuç: "HI"MsgBox Right("ABCDEFGHI", 1) 'Sonuç: "I"MsgBox Right("ABCDEFGHI", 100) 'Sonuç: "ABCDEFGHI"Alt Bitiş |
Bir Değişkende VBA Sağ İşlevi Son n Karakter
Yukarıda gösterildiği gibi, yalnızca tırnak içine alınmış metin girerek bir dize tanımlayabilirsiniz. Ancak RIGHT İşlevi, dize değişkenleriyle de çalışacaktır. Bu örnekler, bir dize değişkeninden son n karakteri çıkaracaktır.
123456789 | Alt SağÖrnek_2()Dim StrEx As String 'Bir dize değişkeni tanımlayınStrEx = "ABCDEFGHI"MsgBox Right(StrEx, 4) 'Sonuç: "FGHI"MsgBox Right(StrEx, 2) 'Sonuç: "HI"MsgBox Right(StrEx, 1) 'Sonuç: "I"MsgBox Right(StrEx, 100) 'Sonuç: "ABCDEFGHI"Alt Bitiş |
VBA Programlama | Code Generator sizin için çalışıyor!
Bir Hücreden VBA Sağ İşlevi Son n Karakter
Dizeler VBA kodunda tanımlanabilir, ancak hücrelerdeki değerleri de kullanabilirsiniz. Bir hücrenin değerini okuyun, onu bir dize değişkeninde tutun ve bu Çalışma Sayfası Hücresi değerinden son n karakteri çıkarın.
123456789101112 | Alt SağÖrnek_3()Dim StrEx As String 'Bir dize değişkeni tanımlayın'Çalışma sayfasındaki A1 hücresinin değerini okuyun Sayfa1StrEx = ThisWorkbook.Worksheets("Sayfa1").Range("A1").Value'Bu örnek için A1 hücresinin değeri "ABCDEFG hI"MsgBox Right(StrEx, 4) 'Sonuç: "G hI"MsgBox Right(StrEx, 2) 'Sonuç: "hI"MsgBox Right(StrEx, 1) 'Sonuç: "I"MsgBox Right(StrEx, 100) 'Sonuç: "ABCDEFG hI"Alt Bitiş |
VBA Sağ İşlevi İlk Harfi Kırp
Harfleri bir dizenin başlangıcından kaldırmak için, UZUNLUK İşlevi ile birlikte SAĞ İşlevini kullanın.
VBA UZUNLUK işlevi, bir dizedeki karakter sayısını sayar:
1 | Len(StrEx) |
İşlevleri birleştirerek, dizenin başlangıcından belirli sayıda karakteri kaldırabiliriz:
12345678 | Alt SağÖrnek_4()Dim StrEx As String 'Bir dize değişkeni tanımlayınStrEx = "ABCDEF"MsgBox Right(StrEx, Len(StrEx)) 'Sonuç: "ABCDEF"MsgBox Right(StrEx, Len(StrEx) - 1) 'Sonuç: "BCDEF"MsgBox Right(StrEx, Len(StrEx) - 2) 'Sonuç: "CDEF"Alt Bitiş |
VBA Boşluktan Sonra Metin Çıkarma Hakkı
Tam adı olan bir dizeden soyadı çıkarmak için, Len ve Instr İşlevi ile birlikte Sağ İşlevi kullanın.
VBA UZUNLUK işlevi, bir dizedeki karakter sayısını sayar:
1 | Len(StrEx) |
VBA InStr işlevi, bir dize içinde bir alt dize arar ve alt dizenin konum numarasını döndürür.
1 | InStr(StrEx, " ") |
Fonksiyonları birleştirerek, bir cümleden ilk boşluktan sonraki kısmı çıkarabiliriz:
123456789101112131415 | Alt SağÖrnek_5()Dim StrEx As String 'Bir dize değişkeni tanımlayınStrEx = "Luke Skywalker"MsgBox Right(StrEx, Len(StrEx) - InStr(StrEx, " "))'Sonuç: "Skywalker"StrEx = "Leonardo da Vinci"MsgBox Right(StrEx, Len(StrEx) - InStr(StrEx, " "))'Sonuç: "da Vinci"StrEx = "Güç sizinle olsun"MsgBox Right(StrEx, Len(StrEx) - InStr(StrEx, " "))'Sonuç: "Güç seninle olsun"Alt Bitiş |
VBA Kodu Örnekleri Aramaktan Bıktınız mı? AutoMacro'yu deneyin!
VBA Son Sözü Çıkarma Hakkı
Bir dizeden son kelimeyi bir cümle ile çıkarmak için, Len ve InstrRev Function ile birlikte Right Function'ı kullanın.
Yukarıda gördüğümüz gibi, VBA UZUNLUK işlevi bir dizgedeki karakter sayısını sayar:
1 | Len(StrEx) |
VBA InStrRev İşlevi, bir dize içinde bir alt dize arar ve alt dizenin konum numarasını döndürür. Aramayı ifadenin sonundan (sağdan sola) başlatır, ancak dizenin başlangıcından itibaren (soldan sağa) konumu döndürür.
1 | InStrRev(StrEx, " ") |
Fonksiyonları birleştirerek, bir cümleden son boşluktan sonraki kısmı çıkarabiliriz:
123456789101112131415 | Alt RightExample_6()Dim StrEx As String 'Bir dize değişkeni tanımlayınStrEx = "Luke Skywalker"MsgBox Right(StrEx, Len(StrEx) - InStrRev(StrEx, " "))'Sonuç: "Skywalker"StrEx = "Leonardo da Vinci"MsgBox Right(StrEx, Len(StrEx) - InStrRev(StrEx, " "))'Sonuç: "da Vinci"StrEx = "Güç sizinle olsun"MsgBox Right(StrEx, Len(StrEx) - InStrRev(StrEx, " "))'Sonuç: "sen"Alt Bitiş |