• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Bitişik kelimeleri ayırma problemi office 2010

Katılım
8 Ağustos 2012
Mesajlar
4
Excel Vers. ve Dili
türkçe
YAPIKREDİTAHSİLEVERİLENÇEKLER

Yukarıdaki yazı tek bir kolon içinde nasıl ayırabilirim
lütfen yardım
 
Merhaba Seyit006 aşağıdaki formül işinizi görür mü. (Metni A1 hücresinde farzettim)

SOLDAN(A1;9)&" "&PARÇAAL(A1;10;7)&" "&PARÇAAL(A1;17;7)&" "&PARÇAAL(A1;24;6)
 
Merhaba Seyit006 aşağıdaki formül işinizi görür mü. (Metni A1 hücresinde farzettim)

SOLDAN(A1;9)&" "&PARÇAAL(A1;10;7)&" "&PARÇAAL(A1;17;7)&" "&PARÇAAL(A1;24;6)

Merhaba,

"KahvaltıdaYumurtaYemedim" olsaydı nasıl olacaktı?

Eğer belirli sözcükler yoksa ayrım işi de sakat olur.
 
Merhaba, evet belirli sözcükler yoksa bu şekilde ayrım söz konusu olamayacak. Sn. Seyit0006 bu konuda net bir talepte bulunmayınca tekdüze bitişik kelimeler olarak algılanıyor. Bu durumda söz üstatlara kalıyor :)
 
fakat kelimelerimiz aynı uzunluktaki karakterler faklı olduğu için uyum sağlamadı
ben heceleme falan diye birşey okumuştum
o konuda bilginiz varmı acaba
 
YAPIKREDİTAHSİLEVERİLENÇEKLER
AKBANKTAHSİLEVERİLENÇEKLER
İNGBANKTAHSİLEVERİLENÇEKLER
İŞBANKASITAHSİLEVERİLENÇEKLER
KARŞILIKSIZÇIKANÇEKLER

ayırmak istediğim kelimeler yukarıdaki gibi
 
Sözcüklerin tanımlı olduğu dictionary oluşturulursa parçalamak mümkündür.

Bunu yapana kadar ve yazıları elle parçalamak arasındaki süreyi de değerlendirmek gerekir.
 
Merhaba Seyit0006 başka bir kaynaktan alıntı yaparak şöyle bir yol buldum, fakat bazı eksikleri mevcut.
Kod:

Function SplitCaps(strIn As String) As String
Dim objRegex As Object
Set objRegex = CreateObject("vbscript.regexp")
With objRegex
.Global = True
.Pattern = "([a-z])([A-Z])"
SplitCaps = .Replace(strIn, "$1 $2")
End With
End Function

Bu kodu modüle yapıştırın. Yalnız birleşik olan kelimelerin baş harfinin büyük olması gerekiyor. Örnek ;"YapıkrediTahsileVerilenÇekler" daha sonra istediğiniz hücreye =SplitCaps() yazarak hücreyi seçin. Bu şekilde olursa kısmi olarak işinizi çözüyor. Fakat ben bu foruma üye biri olarak ancak bu kadar yardım edebildim fazlasını yapamıyorum :)
 
Sayın Seyit0006
Birde bu ekteki dosyaya bakar mısın bir iki aşamadan sonra sanırım EĞER fonksiyonuyla istediğiniz gibi olmuştur. Eğer sütundaki Bitişik yazılanlar bu beş benzersizden ibaretse yazdığım gibi oluyor. Ayrıca formülsüz olarak bu işlemi Excelin BUL DEĞİŞTİR özelliği ile de yapabilirsiniz

http://s3.dosya.tc/server11/53u1n5/Bitisik_Ayir.xlsx.html
 
Alternatif;

Bu şekilde deneyiniz.

Farklı yapılar var ise aşağıdaki örnek gibi çoğaltabilir siniz.

Yapıkredi Tahsile Verilen Çekler
Akbank Tahsile Verilen Çekler
İngbank Tahsile Verilen Çekler
İşbankası Tahsile Verilen Çekler
Karşılıksız Çıkan Çekler

Kod:
Sub veriduzenle()
  sonsatir = Cells(Rows.Count, "A").End(3).Row
  For i = 1 To sonsatir
    veri = UCase(Cells(i, 1).Value)
    If InStr(veri, "TAHSİLEVERİLENÇEKLER") > 0 Then
       banka = Replace(veri, "TAHSİLEVERİLENÇEKLER", "")
       banka = ilk_harf_buyuk(tum_harfler_kucuk(banka))
       bilgi = banka & " Tahsile Verilen Çekler"
  
    End If
    
    If veri = "KARŞILIKSIZÇIKANÇEKLER" Then
       banka = ""
       bilgi = "Karşılıksız Çıkan Çekler"
    End If
  
    Cells(i, 2).Value = bilgi
  Next i
End Sub

Public Function tum_harfler_kucuk(cumle)
gecici = ""
For i = 1 To Len(cumle)
          h = Mid(cumle, i, 1)
          Select Case h
            Case "Ğ": gecici = gecici + "ğ"
            Case "Ü": gecici = gecici + "ü"
            Case "Ş": gecici = gecici + "ş"
            Case "Ç": gecici = gecici + "ç"
            Case "Ö": gecici = gecici + "ö"
            Case "I": gecici = gecici + "ı"
            Case "İ": gecici = gecici + "i"
            Case Else: gecici = gecici + LCase(h)
            End Select
Next i
tum_harfler_kucuk = gecici
End Function


Public Function ilk_harf_buyuk(cumle)
gecici = ""
For i = 1 To Len(cumle)
          h = Mid(cumle, i, 1)
          If i = 1 Then
            Select Case h
              Case "ğ": gecici = gecici + "Ğ"
              Case "ü": gecici = gecici + "Ü"
              Case "ş": gecici = gecici + "Ş"
              Case "ç": gecici = gecici + "Ç"
              Case "ö": gecici = gecici + "Ö"
              Case "ı": gecici = gecici + "I"
              Case "i": gecici = gecici + "İ"
              Case Else: gecici = gecici + UCase(h)
            End Select
          Else
             gecici = gecici + h
          End If
Next i
ilk_harf_buyuk = gecici
End Function
 
Son düzenleme:
Geri
Üst