Hei
Olen yrityksen ja erehdyksen kautta värkännyt makron, joka suojaa/purkaa suojauksen koskien kaikkia avoinna olevia taulukoita sekä toisen makron, joka tekee saman avoinna oleville kaavioille.
En kuitenkaan saa niitä toimimaan yhdessä siten, että samalla makrolla suojattaisiin/purettaisiin suojaus molemmista ilman, ettei tulisi jotain virheilmoitusta,
Olisiko joku (Kunde?) ystävällinen, ja kertoisi minulle, miten saan nuo yhdistettyä niin, että ne toimisivat loppukäyttäjäystävällisesti ilman virheilmoituksia. Kiitos.
Suojausmakrot
Sub suojaa()
Dim sh As Excel.Worksheet
For Each sh In ActiveWorkbook.Sheets
sh.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlUnlockedCells
Next
Set sh = Nothing
End Sub
Sub SuojaaC()
Dim ch As Chart
For Each ch In ActiveWorkbook.Charts
ch.Protect
Next
Set ch = Nothing
End Sub
Purkumakrot
Sub pura()
Dim sh As Excel.Worksheet
For Each sh In ActiveWorkbook.Sheets
sh.Unprotect
Next
Set sh = Nothing
End Sub
Sub purac()
Dim ch As Chart
For Each ch In ActiveWorkbook.Charts
ch.Unprotect
Next
Set ch = Nothing
End Sub
Olen yrityksen ja erehdyksen kautta värkännyt makron, joka suojaa/purkaa suojauksen koskien kaikkia avoinna olevia taulukoita sekä toisen makron, joka tekee saman avoinna oleville kaavioille.
En kuitenkaan saa niitä toimimaan yhdessä siten, että samalla makrolla suojattaisiin/purettaisiin suojaus molemmista ilman, ettei tulisi jotain virheilmoitusta,
Olisiko joku (Kunde?) ystävällinen, ja kertoisi minulle, miten saan nuo yhdistettyä niin, että ne toimisivat loppukäyttäjäystävällisesti ilman virheilmoituksia. Kiitos.
Suojausmakrot
Sub suojaa()
Dim sh As Excel.Worksheet
For Each sh In ActiveWorkbook.Sheets
sh.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlUnlockedCells
Next
Set sh = Nothing
End Sub
Sub SuojaaC()
Dim ch As Chart
For Each ch In ActiveWorkbook.Charts
ch.Protect
Next
Set ch = Nothing
End Sub
Purkumakrot
Sub pura()
Dim sh As Excel.Worksheet
For Each sh In ActiveWorkbook.Sheets
sh.Unprotect
Next
Set sh = Nothing
End Sub
Sub purac()
Dim ch As Chart
For Each ch In ActiveWorkbook.Charts
ch.Unprotect
Next
Set ch = Nothing
End Sub
Vastaukset 2
Vanhimmat
Sub Suojaa()
Dim i As Long
For i = 1 To Sheets.Count
Sheets(i).Protect
Next
End Sub
Sub PoistaSuojaus()
Dim i As Long
For i = 1 To Sheets.Count
Sheets(i).Unprotect
Next
End Sub
Keep EXCELing
@Kunde
Kiitos, Kundeen voi aina luottaa!