• DİKKAT

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

Hücrede ki veri sonlarında boş karakterler..!

Katılım
10 Ekim 2010
Mesajlar
1,469
Excel Vers. ve Dili
2010 Türkçe
Merhaba
Makrolu bir çalışma sayfam var. B3:B aralığına veri yapıştırma yapıyorum, yapıştırma sonucunda hücrelerin sonunda boşluklar oluşuyor ve veriler eşitlenmiyor. Hücrelere f2 yapıp tek tek boşluk siliyorum. Özel yapıştırdan hepsini denedim. Bunun için otomatik algılayacak bir yöntem varmıdır. Veri sonlarında boşlukları istemiyorum.
Örnek çalışmayı şirkette olduğumdan ekleyemiyorum.
Bilgi verebilir misiniz?
Teşekkür ederim iyi çalışmalar dilerim.
 
Merhaba konuyla alakalı bir yöntem ama ben sonuca gidemedim. Ayrıca bana butonsuz bir makro olmalı. B3:B aralığına veri yapıştırıldığında istediğim gibi sondaki boş karakterlerin silinmesi gerekmektedir.
İlginize teşekkür ederim. İyi çalışmalar dilerim.
 
Merhaba konuyla alakalı bir yöntem ama ben sonuca gidemedim. Ayrıca bana butonsuz bir makro olmalı. B3:B aralığına veri yapıştırıldığında istediğim gibi sondaki boş karakterlerin silinmesi gerekmektedir.
İlginize teşekkür ederim. İyi çalışmalar dilerim.

Merhaba
Sayfanın kod bölümüne kopyalayın ve deneyin.
Kod:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
'Konu       :   Tıklanan Hücreye Kadar Olan Boşlukları Sil
'Mail       :   m.batu.1967@gmail.com
'Msn        :   m.batu.1967@hotmail.com.tr
'Skype      :   m.batu.1967
'Coder By   :   asi_kral_1967
If Target.Count < 2 Then
If Intersect(Target, Range("B3:B" & Rows.Count)) Is Nothing Then Exit Sub
Range("B3:B" & Target.Row).Replace what:=" ", replacement:=""
End If
End Sub
Not : Verileri başka yerden kopyala yapıştır yaptığınızda 1 satırdan fazla veri var ise işlem yapmayacaktır. Bunun yerine son eklediğiniz hücreye F2 Enter yaparak üstteki tüm hücrelerdeki boşlukları iptal edebilirsiniz.
Örneğin :
Sizin kopyaladığınız veri B3:B20 hücresine kadar bu şekilde olduğunda makro çalışmayacaktır. lakin siz B20 hücresi F2 Enter yaptığınız takdirde otomatik üstteki tüm verilerdeki boşlukları iptal edecektir.
Derseniz ki ben hepsini istemiyorum sadece B3:B10 arasında bu işlem olsun o zaman B10 hücresine F2 Enter yapmanız yeterli olacaktır.
 
Merhaba Mehmet Bey,
İlginiz için teşekkür ederim. Evet, verileri bir ve birden fazla maksimum 12 şer adetlerle yapıştırıyorum. Normalde F2 Enter yaptığımda zaten sorun olmadan çalışmadaki makrolar görevini yapıyor. Dediğim gibi verileri yapıştırdığımda hücre sonlarındaki boşluklar varsa silinsin istiyorum. Her hücre de boşluk olmuyor. Bunu da ayrıca belirtmek isterim. Ve bu F2 Enter olayını iptal edelim lütfen.
 
Merhaba Mehmet Bey,
İlginiz için teşekkür ederim. Evet, verileri bir ve birden fazla maksimum 12 şer adetlerle yapıştırıyorum. Normalde F2 Enter yaptığımda zaten sorun olmadan çalışmadaki makrolar görevini yapıyor. Dediğim gibi verileri yapıştırdığımda hücre sonlarındaki boşluklar varsa silinsin istiyorum. Her hücre de boşluk olmuyor. Bunu da ayrıca belirtmek isterim. Ve bu F2 Enter olayını iptal edelim lütfen.

Merhaba
Sayın : Sensizoldum
Olayı bir şekilde tetikletmemiz gerekiyor ondan dolayı böyle bir yanıt verdim size. Sizin benim yazdıklarımı tam okumadığınız anlaşılıyor lütfen daha dikkatli okuyun ve uygulayın.
 
Merhaba iyi akşamlar.
Örnek dosyada B3:B arasına veri yapıştırıyorum. Bunun sonucunda bazı hücrelerde verilerin sonunda boş karakterler bulunmakta. Veri yapıştırma sonucunda sondaki boşlukların silinmesini istiyorum butonsuz bir şekilde… Örnek dosyam ektedir. Yardımcı olmanızı rica ediyorum. İyi akşamlar dilerim.
 

Ekli dosyalar

Merhaba,

Aşağıdaki kodu deneyiniz.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Hücre As Range
    
    On Error GoTo Son
    Application.EnableEvents = False
    
    For Each Hücre In Selection
        If Hücre.Column = 2 Then Hücre.Value = Trim(Hücre.Text)
    Next
    
Son: Application.EnableEvents = True
End Sub
 
Günaydın Korhan Bey, hayırlı sabahlar.
Verdiğiniz kodu denedim istediğim işlemden çok fazlasını yapıyor, B3:B aralığında boş hücreyi de tıklarsam benim normalde yaptığım işleme ait sonuçlar veriyor. Bunun olmaması gerekmektedir. Ayrıca makronun tetiklenmesini daha farklı yaparsak bu işlem tam istediğim gibi olabilir. B3:B aralığına her seferde minimum 1, maksimum12 adet şeklinde veri yapıştırıyorum. Örneğin B3:B10 arasına tek seferde veri yapıştırdım varsayalım. Burayı terk ettikten sonra bu aralıkta işlemi gösterebilir. Örnek çalışmaya yeniden bakmanızı rica ederim.
İyi çalışmalar dilerim.

Saygılarımla.
 

Ekli dosyalar

Merhaba,

Siz sayfalarınızda yapacağınız işlemleri parça parça sorarak sonuç almak istiyorsunuz. Sayfa olaylarında bazı olayları komplike tasarlamak gerekir. Bir olay diğer bir olayın bozulmasına yada yanlış çalışmasına sebep olabilir.

Örnek dosyanızda seçim anında çalışan renklendirme kodları var. Doğal olarak kopyala-yapıştır işleminde siz bir seçim yapıyorsunuz ve bu kodlar devreye giriyor. Bu sebeple istenmeyen sonuçlar çıkıyor. Bu durumda sizin B sütunundaki istediğiniz sonuçları elde etmek için kodları bir butona atayarak elle çalıştırmanız daha sağlıklı olacaktır.
 
Merhaba Korhan Bey,
Butonluda olabilir. Ben veri yapıştırdıktan sonra butonu tıklatırım. B3:B aralığında veri olan hücrelerin sonunda varsa boş karakter otomatik silinsin. Bu şekilde uyarlama yapabiliriyiz. Çünkü B3:B aralığında her hücrede boş karakter olacak diye bir şart yok.
Teşekkür ederim iyi çalışmalar dilerim.
 
Merhaba,

Aşağıdaki kodu deneyin.

Kod:
Option Explicit
 
Sub BOŞLUKLARI_KALDIR()
    Dim Hücre As Range
 
    Application.ScreenUpdating = False
 
    For Each Hücre In Range("B3:B" & Cells(Rows.Count, "B").End(3).Row)
        Hücre.Value = Trim(Hücre.Text)
    Next
 
    Application.ScreenUpdating = True
 
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Geri
Üst