• DİKKAT

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

Bir Hücrenin İçindeki Kısmi Bilgiyi Diğer Bir Hücredeki Bilginin Yanına Kes Yapıştır

  • Konbuyu başlatan Konbuyu başlatan ckkckk
  • Başlangıç tarihi Başlangıç tarihi
Katılım
26 Temmuz 2011
Mesajlar
10
Excel Vers. ve Dili
2010 - Türkçe
Merhaba dostlar;

Benim bir makroya çok ihtiyacım var, şöyle ki:

Benim D2 hücremde "ABC*120" yada "CDE*120*2,5" gibi ya da "FGH250" gibi bir takım değerlerim var.

Bu hücrelerde eğer yıldız varsa hücrenin sağında kalan tüm veriyi F2 hücremdeki "1500" değerinin yanına kes yapıştır metoduyla eklemek istiyorum.

Yıldız yoksa ilgili satırdaki D ve F hücrelerinde herhangi bir değişiklik olmamalıdır.

Ve tabii bu işlem 20 ila 12000 satır uzunluğundaki tablolarımda çalışacak.

Yardımlarınızı rica eder, ilginiz için çok çok teşekkürlerimi sunarım.

Ekte bir örneğini sizlere iletiyorum.
 

Ekli dosyalar

Merhaba,

Aşağıdaki kodları bir modüle kopyalayıp dener misiniz?

Kod:
Sub Duzenle()
    
    Dim i   As Long, _
        j   As Integer, _
        k   As Integer
    
    Application.ScreenUpdating = False
    
    For i = 3 To Cells(Rows.Count, "B").End(3).Row
        j = InStr(1, Cells(i, "D"), "*", vbTextCompare)
        If j > 0 Then
            k = Len(Cells(i, "D")) - j
            Cells(i, "F") = Cells(i, "F") & "*" & Right(Cells(i, "D"), k)
            Cells(i, "D") = Left(Cells(i, "D"), j - 1)
        End If
    Next i
    
    Application.ScreenUpdating = True
    
    MsgBox "İşlem tamamlanmıştır..."
    
End Sub
 
Merhaba,

Aşağıdaki kodları bir modüle kopyalayıp dener misiniz?

Kod:
Sub Duzenle()
    
    Dim i   As Long, _
        j   As Integer, _
        k   As Integer
    
    Application.ScreenUpdating = False
    
    For i = 3 To Cells(Rows.Count, "B").End(3).Row
        j = InStr(1, Cells(i, "D"), "*", vbTextCompare)
        If j > 0 Then
            k = Len(Cells(i, "D")) - j
            Cells(i, "F") = Cells(i, "F") & "*" & Right(Cells(i, "D"), k)
            Cells(i, "D") = Left(Cells(i, "D"), j - 1)
        End If
    Next i
    
    Application.ScreenUpdating = True
    
    MsgBox "İşlem tamamlanmıştır..."
    
End Sub

Merhabalar Sayın Necdet Yeşertener;

Kodu modüle ekledim, son derece muhteşem ve stabil çalışıyor. Excel.web.tr'yi seviyorum. Tekrardan çok çok sağolun. :dua2:

Ayrıca Makro öğrenmek için yol göstermenizi rica edeceğim. Okuldayken Fortran77 öğretmişlerdi 6 yıl önce. Kafam bilgisayar algoritmalarına iyi basar diyebilirim. Cevabınızı bekliyorum. :yazici:
 
Geri
Üst