• DİKKAT

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

Hücre içerisinde kısmi veri silme.

Katılım
1 Nisan 2011
Mesajlar
22
Excel Vers. ve Dili
excel 2003 tr
Arkadaşlar bir hücre içerisinde şöyle bir veri olduğunu varsayalım

A B C D
1 1234567890 ABCDEFGHIJKL 0987654321 ZYVUXTREW
2
3
4


diye devam ettiğini düşünelim.

A1 hücresinde soldan 4 rakamı sabit tutup sağda kalan 6 rakamı sildirebilirmiyiz?
 
:D
A1 hücresi için.
=soldan(A1;4)
 
Teşekkür ederim.
Yanlız bende formul şu şekilde çalıştı
=soldan(A1,4)
 
Teşekkür ederim.
Yanlız bende formul şu şekilde çalıştı
=soldan(A1,4)

Merhaba,

İşletim sisteminin Bölgesel Dil Ayarları Türkçe olmadığı için sizde formül ayraçları Noktalı Virgül Yerine Virgül çalışıyor.
 
sayın Necdet Yeşertener ;
uyarınız için teşekkür ederim.
Bilgisayarımda kullandığım bir programın Türkçe dil desteği olmadığı için sistemi mecbur İngilizce olarak kullanmak durumundayım.

Sadece bu formüle has bi durummu yoksa ben her ";" gereken yerde "," işareti kullanmak zorundamıyım?
 
Açıklamanıza göre tüm formüllerde ayraç olarak virgül kullanmanız gerekir.
 
peki bu formulü daha fazla veri almak için bir başka sayfada makro olarak nasıl kullanabilirim-kullanabilirmiyim?
 
Merhaba

Sorunuzu örnek dosya ile destekleyiniz lütfen, daha hızlı yanıt alırsınız.
 
merhaba,

=SAĞDAN(Sayfa2!A1;UZUNLUK(Sayfa2!A1)-4)
SAYFA2 - A1 hücresine formülü yapıştırıp çekin.
 
Merhaba,

Aşağıdaki kodları deneyiniz.

Kod:
Sub SoldanSil()
    Dim i   As Long, _
        j   As Integer, _
        Kol As Integer, _
        s1  As Worksheet, _
        s2  As Worksheet
    
    Set s1 = Sheets("Sayfa1")
    Set s2 = Sheets("Sayfa2")
    s1.Select
    
    Kol = Cells(1, Columns.Count).End(xlToLeft).Column
    For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
        For j = 1 To Kol
           [B][COLOR=red] If Len(Cells(i, j)) > 4 Then
                s2.Cells(i, j) = Right(Cells(i, j), Len(Cells(i, j)) - 4)
            Else
                s2.Cells(i, j) = Cells(i, j)
[/COLOR][/B]            End If
        Next j
    Next i
    
End Sub
 

Ekli dosyalar

verdiğiniz kodlar tam istediğim gibi çalıştı.fakat kullabaileceğimiz hücre aralıklarını nasıl genişletebiliriz?
 
Merhaba,

Eğer veriler 1. satırdan itibaren girilmişse 1. satırın son kolonuna göre kendinizi hesaplıyor.
Dolayısıyla kolon sayısı olarak önemli değil.

Satır sayısı da önemli değil, kaç satırdan oluşursa oluşsun dikkate alır.
 
Alternatif.
sayfada istediğiniz bir bölgeyi kendi adresine atabilirsiniz
Ekteki örnek dosyayı inceleyiniz.:cool:
Önce userformu açtıktan sonra boxtaki butona basıp alanı seçmelisiniz.
Kod:
Private Sub CommandButton1_Click()
'Coder : evrengizlenqhotmail.com
'date : 24.04.2011
Dim sh1 As Worksheet, sh2 As Worksheet, adr As Range, hcr As Range
Set sh1 = ActiveSheet
Set sh2 = Sheets("Sayfa2")
Application.ScreenUpdating = False
sh2.Cells.Clear
If RefEdit1.Value = "" Then
    MsgBox "İşlem gerçekleşmedi!" & vbLf & _
    "Lütfen Boxtaki butona tıklayıp Sayfa üzerinden aktarılacak alanı seçiniz!", _
    vbCritical, "U Y A R I"
    Application.ScreenUpdating = True
    Exit Sub
End If
Set adr = Range(Replace(RefEdit1.Value, sh1.Name & "!", ""))
For Each hcr In sh1.Range(adr.Address)
    sh2.Range(hcr.Address) = hcr.Value
Next
Application.ScreenUpdating = True
Set sh1 = Nothing: Set sh2 = Nothing: Set adr = Nothing
Unload Me
MsgBox "Verieler akatarıldı." & vbLf & "evrengizlen@hotmail.com" & vbLf & "24.04.2011", vbOKOnly + vbInformation
End Sub
 

Ekli dosyalar

Merhaba,

Eğer veriler 1. satırdan itibaren girilmişse 1. satırın son kolonuna göre kendinizi hesaplıyor.
Dolayısıyla kolon sayısı olarak önemli değil.

Satır sayısı da önemli değil, kaç satırdan oluşursa oluşsun dikkate alır.

gönderdiğiniz dosya üzerinde yapmış olduğum çalışmada herhangi bir satıra yada sütuna veri girdiğimde şu satırda hata meydana gelmektedir.

s2.Cells(i, j) = Right(Cells(i, j), Len(Cells(i, j)) - 4)
 
Alternatif.
sayfada istediğiniz bir bölgeyi kendi adresine atabilirsiniz
Ekteki örnek dosyayı inceleyiniz.:cool:
Önce userformu açtıktan sonra boxtaki butona basıp alanı seçmelisiniz.
Kod:
Private Sub CommandButton1_Click()
'Coder : evrengizlenqhotmail.com
'date : 24.04.2011
Dim sh1 As Worksheet, sh2 As Worksheet, adr As Range, hcr As Range
Set sh1 = ActiveSheet
Set sh2 = Sheets("Sayfa2")
Application.ScreenUpdating = False
sh2.Cells.Clear
If RefEdit1.Value = "" Then
    MsgBox "İşlem gerçekleşmedi!" & vbLf & _
    "Lütfen Boxtaki butona tıklayıp Sayfa üzerinden aktarılacak alanı seçiniz!", _
    vbCritical, "U Y A R I"
    Application.ScreenUpdating = True
    Exit Sub
End If
Set adr = Range(Replace(RefEdit1.Value, sh1.Name & "!", ""))
For Each hcr In sh1.Range(adr.Address)
    sh2.Range(hcr.Address) = hcr.Value
Next
Application.ScreenUpdating = True
Set sh1 = Nothing: Set sh2 = Nothing: Set adr = Nothing
Unload Me
MsgBox "Verieler akatarıldı." & vbLf & "evrengizlen@hotmail.com" & vbLf & "24.04.2011", vbOKOnly + vbInformation
End Sub


ilgilendiğiniz için teşekkür ederim,
sizin verdiğiniz örnek sayfada

Private Sub UserForm_Initialize()

satırı hata veriyor.
 
Merhaba,

dosyayı ekleyebilir misiniz?

Veriyi görmeden olayı anlamak zor.
 
hata Vermiyor.
Sanırım sizin dosyanızda refedit nesnesi yok.
Resim de gözüküyor gayet iyi çalışıyor.

ilgilendiğiniz için teşekkür ederim,
sizin verdiğiniz örnek sayfada

Private Sub UserForm_Initialize()

satırı hata veriyor.

3416evren_refedit.jpg
[/URL][/IMG]
 
Merhaba,

veri uzunluğu 5 karakterden az olanlarda hata vermesi doğal, 11. mesajımda kod ve dosyayı yeniledim.
 
yenilenen kodlarla çalışır hale geldi.teşekkür ederim.
Evren bey sizin paylaştığınız kodlarda da
Private Sub UserForm_Initialize()
Me.Caption = Format(Now, "dd mmmm yyyy dddd hh:mm")
End Sub

bu satırlar silindiği zaman normal çalıştı.Teşekkür ederim.
 
Geri
Üst