bu kod ne anlama geliyor yardım

Katılım
14 Şubat 2005
Mesajlar
137
arkadaşyar hazırladığım exell çalışma kitabında ana sayfa olarak kullandığım sayfada bulunan formülleri korumak için bir kod kullandım ancak sadece dell yapılmasını önlüyor hücre içerisinde değişiklik yapılmasına izin veriyor,

bende formülleri korumak için exell sayfasını hücre kilitle ve sayfa koru ile koruma yoluna gittim ancak bu seferde aşağıdaki kod hata verdi . neden olabilir? bu kod ne anlama geliyor? burda bir değişiklikmi yapmam gerekiyor? (unutmadan sayfa korumadan gerekli izinleri verdim, tüm ayarlamaları yaptım olmadı)



Selection.Sort Key1:=Range("A10"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,595
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Belirttiğiniz kod, Seçim yaptığınız bölgeyi (büyük olasılıkla A sütununda bir yer burası) sıralıyor.

Sizde hücreleri koruma altına almışsınız dolayısıyla kod çalışamayacağı için hata alırsınız. Bu durumda bu kod çalışmadan önce sayfa korumayı kaldıran ve kod çalıştıktan sonra tekrar sayfa koruma koyan makro kodlarını yazmalısınız.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,595
Excel Vers. ve Dili
Ofis 365 Türkçe
Kodunuz şöyle olmalı :

Kod:
ActiveSheet.Unprotect Password:="[COLOR=red][B]Şifreniz[/B][/COLOR]"
 
Selection.Sort Key1:=Range("A10"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal 
 
ActiveSheet.Protect Password:="[COLOR=red][B]Şifreniz[/B][/COLOR]", DrawingObjects:=True, Contents:=True, Scenarios:=True
 
Katılım
14 Şubat 2005
Mesajlar
137
sayın necdet arkadaşım öncelikle merhaba
yazmış olduğun cevabı okudum ancak belirtiğin kodu yazacak kadar bilgim yok
ilgili sayfada aşağıdaki kodun tamamını kullanıyarum sizin söylemiş olduğunuz kodu buruya nasıl ekleyebilirim ilgine şimdiden teşekkür ederim


Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Not Application.Intersect(Target, Range("a:b")) Is Nothing Then
Target(1).Value = UCase(Target(1).Value)
End If
Application.EnableEvents = True
Application.ScreenUpdating = False
On Error Resume Next
If Target.Column <> 1 Or Target.Value = "" Then Exit Sub
On Error GoTo Devam
Sheets(Target.Text).Select
MsgBox "BU İSİMDE BİR SAYFA MEVCUTTUR.", vbCritical
Sheets("bayi").Select
Target.Select
Application.ScreenUpdating = True
Exit Sub
Devam:
Sheets("Şablon").Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = Target.Text
Sheets("bayi").Select
Range("A10:A1001").Select
Selection.Sort Key1:=Range("A10"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
Range("A10").Select
Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Select
Loop
Application.ScreenUpdating = True
If Target.Row < 10 Then Exit Sub
If Target.Column <> 1 Then Exit Sub
ActiveSheet.Hyperlinks.Add Anchor:=Target, Address:="", _
SubAddress:=Target.Text & "!A1", TextToDisplay:=Target.Text

End Sub
Private Sub CommandButton1_Click()
FİRMAEKLE.Show
End Sub
Private Sub Worksheet_Deactivate()
Application.OnKey "{del}"
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.HasFormula Then
Application.OnKey "{del}", "mesaj"
Else
Application.OnKey "{del}"
End If
End Sub
 
Katılım
14 Şubat 2005
Mesajlar
137
necdet arkadaş
size cevap yazarken kodunuz geldi ancak
verdiğiniz kod sayfayı şifreliyor yanılmıyorsam
ben bu sayfaya ayrıca user form ile veri ilave ediyorum
hata bu sırada oluşuyor dosyanın tamamını isterseniz gnderebilirim
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,595
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba, 3 Nolu mesajımı inceleyiniz.
 
Katılım
14 Şubat 2005
Mesajlar
137
necdet arkadaşım çok teşekkür ederim verdiğiniz kod çalıştı
iyi çalışmalar diliyorum
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,595
Excel Vers. ve Dili
Ofis 365 Türkçe
Teşekkür ederim.
 
Üst