Print side | Luk vindue

Køre en Makro.

Udskrevet fra: Dansk Regneark Forum
Kategori: Hjælp til regneark.
Forum navn: Makro og VBA
Forum beskrivelse: Hjælp til Makroer og VBA-programmering
Web-adresse: https://forum.excel-regneark.dk/forum_posts.asp?TID=264
Udskrevet den: 13.Maj.2024 kl. 22:35


Emne: Køre en Makro.
Besked fra: timer
Emne: Køre en Makro.
Posteringsdato: 28.Feb.2011 kl. 09:47
Hej !
 
Jeg har et problem med at fjerne beskyttelse af ark, når jeg kører Makroen.
 
Jeg har indspillet Makroen således, jeg åbner flien, klikker på arket, klikker på "Fjern arkbeskyttelse" taster koden og åbner arket, laver mine rettelser, klikker igen på "Beskyt ark" og taster koden, klikker på "GEM", lukker siden og stopper indspilning.
 
Når jeg så kører Makroen virker alt med undtagelse af, at Promten "Fjern arkbeskyttelse" kommer op og jeg skal taste koden for at køre Makroen til ende. Arket bliver så efterladt åbent uden beskyttelse.
 
Er der nogen der kan fortælle mig hvordan jeg får Makroen til at køre hele processen uden at taste kode ?
 
Hej



Svar:
Besked fra: Allan
Posteringsdato: 28.Feb.2011 kl. 11:24
Hej,
 
Med risiko for at jeg har forstået dig forkert, har jeg disse 2 koder til dig.
 
Sub Beskyt()
    ActiveSheet.Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
 
Sub Fjern_Beskyt()
    ActiveSheet.Unprotect "123"
End Sub
 
Beskyt: Beskytter arket med koden 123
Fjern_Beskyt: Åbner arket igen med koden 123
 
//Allan


Besked fra: timer
Posteringsdato: 28.Feb.2011 kl. 21:28

Koden er en stjerne og et klik på OK (* OK)

Her er kan du se schriptet:
( Hvor/hvordan kan jeg flette "Beskyt ark"/"Fjern beskyttelse ind her ?

Sub opdatchaufloen()
'
' opdatchaufloen Makro
' Makro indspillet 27-02-2011 af Stig Petersen
'
'
    ChDir "C:\SPtaxi\chauf"
    Workbooks.Open Filename:="C:\SPtaxi\chauf\c01.xls", UpdateLinks:=3
    ActiveWindow.ScrollWorkbookTabs Sheets:=14
    Sheets("mar1").Select
    ActiveSheet.Unprotect
    Range("E25").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(R[-1]C[1]>0,+IF(R[-14]C[-3]=3,IF(Stam!R[5]C[-3]=Stam!R[5]C,Stam!R[5]C,Stam!R[5]C)+IF(Stam!R[5]C="""",Stam!R[5]C[-3])),0)"
    Application.Run "Backup"
    Range("A1").Select
    ActiveWorkbook.Save
    ActiveWindow.Close
'
    Workbooks.Open Filename:="C:\SPtaxi\chauf\c02.xls", UpdateLinks:=3
    ActiveWindow.ScrollWorkbookTabs Sheets:=14
    Sheets("mar1").Select
    ActiveSheet.Unprotect
    Range("E25").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(R[-1]C[1]>0,+IF(R[-14]C[-3]=3,IF(Stam!R[5]C[-3]=Stam!R[5]C,Stam!R[5]C,Stam!R[5]C)+IF(Stam!R[5]C="""",Stam!R[5]C[-3])),0)"
    Application.Run "Backup"
    Range("A1").Select
    ActiveWorkbook.Save
    ActiveWindow.Close
End Sub


Besked fra: Allan
Posteringsdato: 28.Feb.2011 kl. 23:28
Hej igen,
 
Koden i denne kodestump er 123 (Du kan selv rette den til hvad du ønsker.)
 
Sub opdatchaufloen()
Koden = "123" 'Ret koden her.
    Workbooks.Open Filename:="C:\SPtaxi\chauf\c01.xls", UpdateLinks:=3
    Sheets("mar1").Select
    ActiveSheet.Unprotect Koden
    Range("E25").FormulaR1C1 = _
        "=IF(R[-1]C[1]>0,+IF(R[-14]C[-3]=3,IF(Stam!R[5]C[-3]=Stam!R[5]C,Stam!R[5]C,Stam!R[5]C)+IF(Stam!R[5]C="""",Stam!R[5]C[-3])),0)"
    Range("A1").Select
    ActiveSheet.Protect Password:=Koden, DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveWorkbook.Save
    ActiveWindow.Close
'
    Workbooks.Open Filename:="C:\SPtaxi\chauf\c02.xls", UpdateLinks:=3
    Sheets("mar1").Select
    ActiveSheet.Unprotect Koden
    Range("E25").FormulaR1C1 = _
        "=IF(R[-1]C[1]>0,+IF(R[-14]C[-3]=3,IF(Stam!R[5]C[-3]=Stam!R[5]C,Stam!R[5]C,Stam!R[5]C)+IF(Stam!R[5]C="""",Stam!R[5]C[-3])),0)"
    Range("A1").Select
    ActiveSheet.Protect Password:=Koden, DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveWorkbook.Save
    ActiveWindow.Close
End Sub
 
//Allan


Besked fra: timer
Posteringsdato: 01.Mar.2011 kl. 05:31
Hej Allan !
 
Jamen den sidder bare lige i skabet.
Jeg siger tusind tak for hjælpen og din hurtige respons.
 
Hej Timer.


Besked fra: timer
Posteringsdato: 01.Mar.2011 kl. 05:46
Hej igen.
 
Hov forresten - jeg glemte helt at spørge dig, om det er muligt at køre Makroen blot ved at dobbelt klikke på filen, og hvor koden til denne handling i givet fald skal placeres ?
 
Hej Timer.


Besked fra: Allan
Posteringsdato: 01.Mar.2011 kl. 09:29
Velbekomme Timer,
 
For at få makroen til at køre som det første når filen åbnes, skal du omdøbe makroen til Sub Auto_Open()
Det kommer lidt an på din fils opbygning, men prøv lige om den virker i første hug.
 
//Allan


Besked fra: timer
Posteringsdato: 01.Mar.2011 kl. 12:00
Hej Allan.
 
Jo tak, det hele virker perfekt.   Thumbs Up
 
Endnu engang tusind tak for din hjælp.
Det har bare været en fornøjelse.
 
Hej Timer.


Besked fra: Allan
Posteringsdato: 01.Mar.2011 kl. 12:41
Det var dejligt at kunne hjælpe dig. Wink
Rigtig god dag til dig Timer.
 
//Allan


-------------
MVH

Allan
https://www.excel-regneark.dk" rel="nofollow - Excel-regneark.dk - Gratis skabeloner til Excel
Få over 120 ekstra funktioner med Danmarks bedste add-in



Print side | Luk vindue