• DİKKAT

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

Temizle butonu

Katılım
14 Kasım 2011
Mesajlar
103
Excel Vers. ve Dili
2003 Türkçe
Sevgili arkadaşlar herkese iyi geceler ekte gönderdiğim formda temizle butonuna tıklayıncası j-K-L sütunları temizleniyor ancak hazırla butonuna tıklayıncası sadece J sütunundaki isimler geliyor K ve L sütunundaki bilgilere ait formüller siliniyor benim siz değerli arkadaşlarımdan formüller silinmeden K ve L sütunundaki bilgilerinde gelmesini istiyorum.
 

Ekli dosyalar

Temizle makrosu kodlarını aşağıdaki ile değiştiriniz..

Sub temizle()
Range( _
"j3:j8" _
).ClearContents
Range("J3").Select
End Sub
 
Alternatif olarak.
Sayfanın kod bölümüne:
Kod:
Sub adlar()
Range("j2:j65536").ClearContents
d = 2
For a = 2 To Range("b65536").End(xlUp).Row
say = WorksheetFunction.CountIf(Range("b2:b" & a), Range("b" & a))
If say = 1 Then
Range("j" & d) = Range("b" & a)
d = d + 1
End If
Next
Module1.yaz
End Sub

Module1 içindeki kodlar yerine:

Kod:
Sub temizle()
    Range( _
        "j2:L80" _
        ).ClearContents
    Range("J3").Select
End Sub

Sub yaz()
Application.ScreenUpdating = False
    Range("J2:J80").Select
    ActiveWorkbook.Worksheets("Sayfa1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sayfa1").Sort.SortFields.Add Key:=Range("J2"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortTextAsNumbers
    With ActiveWorkbook.Worksheets("Sayfa1").Sort
        .SetRange Range("J2:J80")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
        Range("K2").Select
    ActiveCell.FormulaR1C1 = _
    "=IF(RC[-1]="""","""",SUMIFS(R2C6:R18C6,R2C2:R18C2,RC10,R2C5:R18C5,R1C11))"
    Range("L2").Select
    ActiveCell.FormulaR1C1 = _
    "=IF(RC[-2]="""","""",SUMIFS(R2C6:R18C6,R2C2:R18C2,RC10,R2C5:R18C5,R1C12))"
    Range("K2:L2").Select
    Selection.AutoFill Destination:=Range("K2:L80"), Type:=xlFillDefault
    Range("J2").Select
    Range("K2:L80").Value = Range("K2:L80").Value
Application.ScreenUpdating = False
End Sub

Değiştirip denermisiniz.
 
Son düzenleme:
Vardar bey sizin kodları yazdığımda sadece isimleri silip geri getiriyor yıllardaki rakamları getirmiyor teşekkürler
 
Vardar bey dosyanızı buradan inceledim ama yine çalışmıyor eğer ofistense bendeki 2003
 
Vardar bey dosyanızı buradan inceledim ama yine çalışmıyor eğer ofistense bendeki 2003

2003 kullanmadığım için bilmiyorum. Ancak dosyayı kayıt ederken 2003 uyumlu kayıt ettim. Ancak yanlış değilsem ben 2007 de TOPLA.ÇARPIM Fonksiyonu ile KTF makro olarak verdim. 2003 özelliğinde TOPLA.ÇARPIM kullanılamıyor.
Aşağıdaki linkte " Destek Ofisi 2003 için sona eriyor ." makale var. Sisteminiz ne bilmiyorum ben (XP SP3 ) office 2007 kullanıyorum. Elimden geldiğince 2003 e uygun değiştirmeye çalışayım.

incelermisiniz:
http://office.microsoft.com/en-us/excel-help/sumproduct-HP005209293.aspx


#4 Nolu Mesajdaki kodları tekrar denermisin.
 
Son düzenleme:
Tanımlanın hücreleri nasıl silecez.
 
Geri
Üst