• DİKKAT

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

Anlaşılmayan makro

  • Konbuyu başlatan Konbuyu başlatan mcd
  • Başlangıç tarihi Başlangıç tarihi

mcd

Katılım
26 Şubat 2005
Mesajlar
25
Excel Vers. ve Dili
Office 2003
Private Sub CommandButton1_Click()
'ActiveSheet.Unprotect Password:="1"


If ActiveCell.Value = "" And ActiveCell.Row = 6 Or ActiveCell.Value = "P" And ActiveCell.Row = 6 Or ActiveCell.Value = "T" And ActiveCell.Row = 6 Or ActiveCell.Value = "E" And ActiveCell.Row = 6 Or ActiveCell.Value = "Y" And ActiveCell.Row = 6 Or ActiveCell.Value = "S" And ActiveCell.Row = 6 Then
ActiveSheet.Unprotect Password:="1"
ActiveCell.Value = "0,25"
ActiveCell.Font.Size = 1
ActiveCell.Next.Select
ActiveCell.Value = "0,25"
ActiveCell.Font.Size = 1
ActiveCell.Next.Select
For t = 1 To 78
If Cells(6, 6 + t).Value = "0,25" Then
Cells(6, 4).Value = Cells(34, 6 + t)
Exit For
End If
Next
For t = 1 To 78
If Cells(6, 6 + t).Value = "" And Cells(34, 6 + t).Value > Cells(6, 4).Value Then
Cells(6, 5).Value = Cells(34, 6 + t)
Exit For
End If
Next

ElseIf ActiveCell.Value = "" And ActiveCell.Row = 8 Or ActiveCell.Value = "P" And ActiveCell.Row = 8 Or ActiveCell.Value = "T" And ActiveCell.Row = 8 Or ActiveCell.Value = "E" And ActiveCell.Row = 8 Or ActiveCell.Value = "Y" And ActiveCell.Row = 8 Or ActiveCell.Value = "S" And ActiveCell.Row = 8 Then
ActiveSheet.Unprotect Password:="1"
ActiveCell.Value = "0,25"
ActiveCell.Font.Size = 1
ActiveCell.Next.Select
ActiveCell.Value = "0,25"
ActiveCell.Font.Size = 1
ActiveCell.Next.Select
For t = 1 To 78
If Cells(8, 6 + t).Value = "0,25" Then
Cells(8, 4).Value = Cells(34, 6 + t)
Exit For
End If
Next


ekteki makroyu arkadaşım yazdı ama düzenleme yapmak için tam ne olduğunu anlayamadım arkadaşta yurt dışında sizden ricam ne demek olduğunu bana yazmanız.
Teşekkürler,
 
Bence siz ne yapmak istediğinizi izah ederseniz ona göre bir kodlama önerelim. Verdiğiniz kodu gördüğüm kadarı ile epeyce kısaltmak mümkün.
 
Selamlar,

Bu şekilde kodlarınızı ekleyerek bizler ancak tahmin yürüterek açıklamalar yapabiliriz. Bunun yerine dosyanızı eklerseniz daha açıklayıcı bilgiler verebiliriz. Ama ısrarla bu kodu açıklayın derseniz.

Kısaca sayfa üzerinde aktif hücrenin 6. satırmı değilmi ve P,T,Y,E,S harflerinin yazılı olup olmadığı kontrol ediliyor. Eğer kriterlere uyuyorsa sayfa koruması kaldırılıyor. Aktif hücre değeri 0,25 veriliyor ve font büyüklüğü 1 olarak ayarlanıyor. Aynı uygulama bir alttaki hücre içinde yapılıyor. Bir alttaki hücre seçiliyor. 1 den 78 e kadar döngü kuruluyor. 6. satır ile 7. sütunun kesiştiği hücre değerinin 0,25 olup olmadığı kontrol ediliyor. Eğer koşul sağlanıyorsa 6. satır ile 5. sütunun kesiştiği hücreye 34. satır ile 7. sütunun kesiştiği hücredeki değer atanıyor. Bu döngü t değeri 78 olana kadar devam ediyor.

Eğer "aktif hücrenin 6. satırmı değilmi ve P,T,Y,E,S harflerinin yazılı olup olmadığı kontrol ediliyor" koşulu sağlanmıyorsa bu sefer 8. satır için aynı kontrol ve döngü uygulanıyor.

Umarım açıklayıcı olmuştur.
 
Geri
Üst