• DİKKAT

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

Aktif hücre renkli ama safya korununca macro çalışmıyor?

Katılım
25 Ağustos 2011
Mesajlar
66
Excel Vers. ve Dili
2003
Değerli ustalar elimdeki mevcut macro gayet güzel çalışıyor ama sayfayı korumaya aldığımda macro çalışmıyor ilgili kod aşağıda hata nerede sizce.


Const iInternational As Integer = Not (0)
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim iColor As Integer
On Error Resume Next
iColor = Target.Interior.ColorIndex
If iColor < 0 Then
iColor = 40
Else
iColor = iColor + 1
End If
If iColor = Target.Font.ColorIndex Then iColor = iColor + 1
Cells.FormatConditions.Delete
With Cells(Target.Row, Target.Column)
.FormatConditions.Add Type:=2, Formula1:=iInternational
.FormatConditions(1).Interior.ColorIndex = iColor
End With
With Range(Target.Offset(1 - Target.Row, 0).Address & ":" & Target.Offset(-1, 0).Address)
.FormatConditions.Add Type:=2, Formula1:=iInternational

End With
End Sub
 
Merhaba
Sayfa koruması yaptığınızda o sayfadaki tüm işlemleri kilitlemiş oluyorsunuz bunun için kodun başına koruma kaldırma sonuna ise tekrardan koruma yapma kodlarını yazın ve deneyin.
 
Merhaba
Sayfa koruması yaptığınızda o sayfadaki tüm işlemleri kilitlemiş oluyorsunuz bunun için kodun başına koruma kaldırma sonuna ise tekrardan koruma yapma kodlarını yazın ve deneyin.

Ahh be usta o kadar anlasam zaten yaparımda bi yardımcı olsan.sayfada belirli hücreler kilitli işlem yapılmasın diye onlar bozulmasın diye sayfayı koruyorum sayfada her yer kilitli değil yani.
 
sayfayı koru şifresi 4545

Kod:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim iColor As Integer
On Error Resume Next
ActiveSheet.Unprotect "4545"
iColor = Target.Interior.ColorIndex
If iColor < 0 Then
iColor = 40
Else
iColor = iColor + 1
End If
If iColor = Target.Font.ColorIndex Then iColor = iColor + 1
Cells.FormatConditions.Delete
With Cells(Target.Row, Target.Column)
.FormatConditions.Add Type:=2, Formula1:=iInternational
.FormatConditions(1).Interior.ColorIndex = iColor
End With
With Range(Target.Offset(1 - Target.Row, 0).Address & ":" & Target.Offset(-1, 0).Address)
.FormatConditions.Add Type:=2, Formula1:=iInternational
End With
ActiveSheet.Protect "4545"
End Sub
Dener misiniz_?
 
Kod:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim iColor As Integer
On Error Resume Next
ActiveSheet.Unprotect "4545"
iColor = Target.Interior.ColorIndex
If iColor < 0 Then
iColor = 40
Else
iColor = iColor + 1
End If
If iColor = Target.Font.ColorIndex Then iColor = iColor + 1
Cells.FormatConditions.Delete
With Cells(Target.Row, Target.Column)
.FormatConditions.Add Type:=2, Formula1:=iInternational
.FormatConditions(1).Interior.ColorIndex = iColor
End With
With Range(Target.Offset(1 - Target.Row, 0).Address & ":" & Target.Offset(-1, 0).Address)
.FormatConditions.Add Type:=2, Formula1:=iInternational
End With
ActiveSheet.Protect "4545"
End Sub
Dener misiniz_?

maalesef usta çalışmadı
eğer yanlış yere koymadıysam
ThisWorkbook kısmına koydum ama çalışmadı
 
Dosyanızı gönderin ve nasıl çalıştığını izah edin bakalım.
ihsan hocam dosya ekte
sayfa koruma kodu 4545
yeşil dolgulu kısımlar değiştirilebilir kilitli olmayan hicreler diğer kısımlar kilitli ama renk kodumuz hiçbir yerde aktif değil.
 

Ekli dosyalar

ihsan hocam dosya ekte
sayfa koruma kodu 4545
yeşil dolgulu kısımlar değiştirilebilir kilitli olmayan hicreler diğer kısımlar kilitli ama renk kodumuz hiçbir yerde aktif değil.

Koda hangi işlemi yaptırıyorsunuz onu bilsem dosyada denesem sorunun nerde olduğuna öyle karar versem
 
Koda hangi işlemi yaptırıyorsunuz onu bilsem dosyada denesem sorunun nerde olduğuna öyle karar versem

ok.Hocam baştan anlatayım.
verdiğim dosyada sayfa koruma kodu mevcut (4545)
bazı hücreler değiştirilemesin diye hücre kilidi var.
yapmaya çalıştığım aktif hücre hangisi ise onun renkli olması yani ben c8 de isem renkli olsun c9 a geçince c9 renkli c8 yine renksiz olsun
yani mause nereye koyduğumu bileyim
Sanırım zor yoldan anlatmaya çalıştım galiba anlatım bozukluğu var bende :)))
 
ok.Hocam baştan anlatayım.
verdiğim dosyada sayfa koruma kodu mevcut (4545)
bazı hücreler değiştirilemesin diye hücre kilidi var.
yapmaya çalıştığım aktif hücre hangisi ise onun renkli olması yani ben c8 de isem renkli olsun c9 a geçince c9 renkli c8 yine renksiz olsun
yani mause nereye koyduğumu bileyim
Sanırım zor yoldan anlatmaya çalıştım galiba anlatım bozukluğu var bende :)))

Merhaba
Sayfanın kod bölümüne ekleyin ve deneyin.
Kod:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Unprotect "4545"
Cells.Interior.ColorIndex = xlColorIndexNone
ActiveCell.Cells.Interior.ColorIndex = 4 ' Hücre Rengi
ActiveSheet.Protect "4545"
End Sub
 
Merhaba
Sayfanın kod bölümüne ekleyin ve deneyin.
Kod:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Unprotect "4545"
Cells.Interior.ColorIndex = xlColorIndexNone
ActiveCell.Cells.Interior.ColorIndex = 4 ' Hücre Rengi
ActiveSheet.Protect "4545"
End Sub


Pc virüs görmesin inş.Çok tşk. oldu be defa

hocam birde şu mesajıma bakabilirmisiniz rica etsem

http://www.excel.web.tr/f14/sutunlar-arasy-arama-t107675.html#post586402
 
Geri
Üst