• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Vrijgave cel

Status
Niet open voor verdere reacties.

malawi

Gebruiker
Lid geworden
10 mrt 2009
Berichten
150
Hallo,

Deze vraag heb ik eerder gesteld maar ik stel de vraag op een andere manier zodat de vraag misschien duidelijker is.

In het test bestand zijn alle cellen beveiligd. i.v.m. het per ongeluk wijzigen. Om het wijzigen een bewuste keuze te laten worden heb ik een button toegevoegd.
Wanneer ik op vrijgave cel(Button zie test bestand) druk wil ik graag dat alleen de cellen met waarde "0" kan selecteren en wijzigen zonder de beveiliging eerst te verwijderen. De overige cellen mogen niet worden gewijzigd.

Is dit mogelijk?

Bij voorbaat dank,

Ewald
 

Bijlagen

  • TEST .xlsm
    95,5 KB · Weergaven: 49
ik had problemen met je knop, dus heb ik die vervangen door een andere (ActiveX).
Nu kan je met die macro een bereik selecteren ofwel intikken en de 0-cellen worden vrijgegeven + opmaak aangepast.
 

Bijlagen

  • TEST .xlsm
    858,3 KB · Weergaven: 49
Hallo,

Dit is inderdaad wat ik bedoel, is bijna goed. De waarde in het te selecteren bereik kunnen ook ander waarden hebben. is het mogelijk om het bereik aan te geven $G$8-$H$17 ongeacht de waarde, waarna ook dit bereik weer wordt beveiligd?

alvast bedankt,

Ewald
 
in #2 kon je een willekeurig bereik selecteren, maar enkele de waarden 0 in dat bereik werden aangepast en ontgrendeld, waarna de beveiliging er terug op ging.
Nu wil je het lichtjes anders, binnen een vast bereik, maar met variabele inhoud (niet meer steeds 0) hetzelfde, of dat denk ik toch zo te lezen.

Alles kan, maar kan je aangeven hoe je precies straks er mee wenst te werken, in alle mogelijke variaties ?
Voor wat is dit eigenlijk, om mij te helpen een idee te vormen ?
 
misschien zo?
 

Bijlagen

  • celle.blokkeren).xlsm
    853,9 KB · Weergaven: 36
#4 Voor dat ik de pop-up krijg moet alleen het bereik G8:H17 worden vrijgegeven zodat ik dit alleen kan selecteren, Na het afsluiten het bereik weer beveiligen. Hierdoor hoef je dan niet de hele pagina van de beveiliging te doen.
Het wordt gebruikt voor een financieel overzicht, zodat ik of mijn vrouw bewust een bedrag kan aanpassen, en de nader kan zien dat het aangepast is.

#5 Ik krijg een foutmelding, maar dit is niet wat ik precies bedoel zie #2 maar dan met een bereik zie bovenstaande.
 
met de macro "MijnScrollarea" kan je het bereik beperken waarin geselecteerd (ook in een onbeveiligd blad) kan worden, dat doe je 1 keer (kan later en ook buiten VBA manueel - voor gevorderden - nog aangepast worden)
De andere macro, die verandert de 0-waarden in een andere waarde en blokkeert die cellen dan ook. Vermoedelijk beantwoordt dit deel nog niet 100% aan de verwachtingen.

Code:
Sub MijnScrollarea()
   With Sheets("blad1")
      .Unprotect                                 'beveiliging eraf
      .ScrollArea = "G8:H17"                     'zelfs in een onbeveiligd blad, kan je alleen hier selecteren
      .Range(.ScrollArea).Cells.Locked = False   'cellen vrijgeven
      .Protect                                   'beveiligen
   End With
End Sub


Sub VrijgaveCel()

   With Sheets("blad1")
      .Unprotect
      For Each c0 In .Range(.ScrollArea).Cells   'alle cellen in die range aflopen
         If c0.Value = 0 And Not IsEmpty(c0) Then   'is de inhoud 0 (als getal !)
            With c0
               .Value = "nieuwe waarde"
               .Locked = True                    'blokkering opheffen

               With .Font
                  .Name = "Arial"
                  .FontStyle = "Standaard"
                  .Size = 11
                  .Strikethrough = False
                  .Superscript = False
                  .Subscript = False
                  .OutlineFont = False
                  .Shadow = False
                  .Underline = xlUnderlineStyleNone
                  .ThemeColor = xlThemeColorDark1
                  .TintAndShade = 0
                  .ThemeFont = xlThemeFontNone
               End With

               With .Interior
                  .Pattern = xlSolid
                  .PatternColorIndex = xlAutomatic
                  .Color = RGB(146, 208, 80)
                  .TintAndShade = 0
                  .PatternTintAndShade = 0
               End With
            End With

         End If
      Next
      .Protect                                   'beveiliging er terug op
   End With
End Sub
 
Laatst bewerkt:
Heren,

Ik ben tevreden, met wat knip-en plakwerk van mijn kant werkt het zo als ik het voorogen had.

Zie bijlage.

Bedankt.

Ewald
 

Bijlagen

  • TEST .xlsm
    97,7 KB · Weergaven: 34
die lijnen met locked=false en true zijn overbodig in een onbeveiligd werkblad, dus die mogen weg.
 
probeer het eens zo.
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("G8:H17")) Is Nothing Then
    Selection.Interior.Color = vbGreen
    MsgBox "Je staat op het punt om de waarde in cel " & Selection.Address & " te wijzigen"
    Selection.Interior.Color = xlNone
End If
End Sub
 

Bijlagen

  • beveiligen.xlsm
    20,5 KB · Weergaven: 27
#10 Deze regels zijn verwijderd. Werkt nu nog beter. cellen welke zijn bewerkt blijven hierdoor toegankelijk.

#11 Ook een mooie oplossing, alleen moet de desbetreffende cel wel blijvend zoals eerder in de marco aangegeven Celkleur en font blijven vasthouden.

Bedankt voor het mee denken.

Ewald
 
alleen moet de desbetreffende cel wel blijvend zoals eerder in de marco aangegeven Celkleur en font blijven vasthouden.
dat zal zelf toch wel lukken?:d
 
Zou je beter niet eerst eens goed nadenken over wat je feitelijk wil, en dan een vraag stellen?
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan