MACRO DUGMESI ILE VE SIFRE ILE KOLON ACMA VE TEKRAR GIZLEME

Katılım
7 Haziran 2022
Mesajlar
15
Excel Vers. ve Dili
Turkce ve ingilizce
Arkadaslar tum sayfa korumali bir sayfada ayrica "c" kolomunu macro dugmesi ile ve sifre ile acip tekrar sifre ile gizlemek istiyorum. Ornek: dugmeye basinca sifre soracak sifre girince gizli kolum"c" acilacak ve tekrar dugmeye basinca yine ayni sifre ile kolom geri gizlenecek. Buna nasil bir macro formul yazarim.
Ben bir tane yazdim ama tam istedigim gibi calismiyor
Soyle bir kod yazdim ama olmadi
Sub Button2()
'
'c = "123"
Columns("c").EntireColumn.Hidden = True
sir = InputBox("", "wirning")
If sir = b Then
Columns("c").EntireColumn.Hidden = False
ElseIf sir = c Then
Columns("c:c").EntireColumn.Hidden = False
Else
MsgBox "123", vbCritical, "wirning"
End If
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,264
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

Ben hem sayfa koruma şifresini hem de işlem şifresini 12345 olarak ayarladım. Siz kendi dosyanıza göre düzenlersiniz.

C++:
Option Explicit

Sub Test()
    Dim My_Password As Variant
    
    My_Password = InputBox("Lütfen onay şifesini giriniz...", "İŞLEM ONAY ŞİFRESİ")
    
    If My_Password = False Or My_Password = "" Then Exit Sub
    
    If My_Password <> 12345 Then
        MsgBox "Hatalı şifre girdiniz!", vbCritical
    Else
        ActiveSheet.Unprotect My_Password
        Columns("C").Hidden = Not Columns("C").Hidden
        ActiveSheet.Protect My_Password
    End If
End Sub
 
Katılım
7 Haziran 2022
Mesajlar
15
Excel Vers. ve Dili
Turkce ve ingilizce
Deneyiniz.

Ben hem sayfa koruma şifresini hem de işlem şifresini 12345 olarak ayarladım. Siz kendi dosyanıza göre düzenlersiniz.

C++:
Option Explicit

Sub Test()
    Dim My_Password As Variant
   
    My_Password = InputBox("Lütfen onay şifesini giriniz...", "İŞLEM ONAY ŞİFRESİ")
   
    If My_Password = False Or My_Password = "" Then Exit Sub
   
    If My_Password <> 12345 Then
        MsgBox "Hatalı şifre girdiniz!", vbCritical
    Else
        ActiveSheet.Unprotect My_Password
        Columns("C").Hidden = Not Columns("C").Hidden
        ActiveSheet.Protect My_Password
    End If
End Sub
Ilginiz icin tesekkur ederim. Denedim ve calisiyor. Ancak ben sayfayi baska sifre ile korursam acmiyor. Yani ben sayfayi baska bir sifre bu dugmeye baska bir sifre vermek istiyorum ki bu dugmeyi kullanan sadece C kolumunda birseyler yapabilsin.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,264
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki satırlardaki bold bölümlere sayfa koruma şifrenizi yazabilirsiniz.

ActiveSheet.Unprotect My_Password
ActiveSheet.Protect My_Password
 
Katılım
7 Haziran 2022
Mesajlar
15
Excel Vers. ve Dili
Turkce ve ingilizce
Aşağıdaki satırlardaki bold bölümlere sayfa koruma şifrenizi yazabilirsiniz.

ActiveSheet.Unprotect My_Password
ActiveSheet.Protect My_Password
Sizin dediginiz gibi sifreyi yazdim. Ama benim yazdigim sifre ile sayfanin sifresini acamiyorum yanlis diyor? Analamadim....(resim cekmistim ama ekleyemiyorum heralde)
soyle yazdim. ama sifremi kabul etmiyor..........
ActiveSheet.Unprotect My_Password = 110279
ActiveSheet.Protect My_Password = 110279
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
ActiveSheet.Unprotect "110279"
gibi yazacaksınız
 
Katılım
7 Haziran 2022
Mesajlar
15
Excel Vers. ve Dili
Turkce ve ingilizce
Aşağıdaki satırlardaki bold bölümlere sayfa koruma şifrenizi yazabilirsiniz.

ActiveSheet.Unprotect My_Password
ActiveSheet.Protect My_Password
tam formulu asagiya yaziyorum. ( bu formul ile sayfanin sifresini acamiyorum. Ama dugme kendi sifresi ile calisiyor. (genel sayfa sifresi 110279 calismiyor, daha dogrusu sayfa yi hic bir sifre acmiyor, her iki sifreye de hatali diyor)

Sub gizle()
Dim My_Password As Variant

My_Password = InputBox("Please enter the confirmation password.", "TRANSACTION CONFIRMATION PASSWORD")

If My_Password = False Or My_Password = "" Then Exit Sub

If My_Password <> 12345 Then
MsgBox "You entered the wrong password!", vbCritical
Else
ActiveSheet.Unprotect My_Password = 110279
Columns("C").Hidden = Not Columns("C").Hidden
ActiveSheet.Protect My_Password = 110279
End If

End Sub
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Biraz dikkat, birazcık uğraş. Gerisi kendiliğinden gelir. Kolay gelsin.
 
Üst