Anlaşılmayan makro

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,
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
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.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
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.
 
Üst