onbekende invoer zorgt voor opheffen van wachtwoord

Status
Niet open voor verdere reacties.

SB2CV

Nieuwe gebruiker
Lid geworden
27 jan 2013
Berichten
2
IK HEB DEZE DISCUSSIE VERPLAATST NAAR VISUAL BASICS IVM OPMERKING HUIJB (ik weet niet hoe ik deze discussie kan verplaatsen dus daarom deze op status opgelost gezet :confused:)

Hallo,

Ik heb al diverse informatie van helpmij.nl gehaald, maar over mijn volgende issue kan ik nog geen topic vinden.

Ik heb een excel bestand om voorraad te beheren en mbv zoeken op helpmij.nl heb ik ook de knoppen 'bijboeken' en 'afboeken' werkend gekregen. De meeste tijd ben ik kwijt geraakt aan het opheffen van de wachtwoord beveiliging bij het activeren van de macro en het weer toepassen van het wachtwoord nadat de macro z'n werk gedaan heeft (voor zover hetgeen me gelukt is :)).

Nu stuit ik alleen op het volgende probleem waar ik geen oplossing voor kan vinden:
Als ik in het bestand een artikelnummer invoer dat niet bestaat, dan wordt de wachtwoord beveiliging op het werkblad wel door de macro opgeheven, maar niet terug gezet, oftewel de werkbladen zijn niet meer beveiligd.

De oplossing van mijn voorkeur is dat ik een melding krijg dat het artikelnummer niet bekend is en dat ik de keuze krijg om het artikelnummer wel of niet toe te voegen, maar zeker zonder dat de beveiliging opgeheven blijft.

Indien een voorraadbestandje nodig is dan kan ik deze nog wel posten.

P.S. het excelbestand was eerst maar enkele kb's, maar zonder dat ik al in het bestand gewerkt heb (wel macro's toegevoegd en 'geprutst') is het al een bestand van bijna 30mb geworden, komt dit door de toevoeging van de macro's of heeft dit te maken met het 'prutsen'?

Alvast bedankt voor je reactie/hulp.

Groet,
 
Laatst bewerkt:
@SB2CV Visual Basic is iets anders dan Visual Basic for Applications, VBA is programmeren binnen Office applicaties. Verplaatst naar juiste sectie.
 
30 Mb voor een bestand zonder gegevens? Dat zou ik niet meer vertrouwen... Tenzij je allemaal afbeeldingen naar binnen haalt en op het werkblad neerzet?
 
IK HEB DEZE DISCUSSIE VERPLAATST NAAR VISUAL BASICS IVM OPMERKING HUIJB (ik weet niet hoe ik deze discussie kan verplaatsen dus daarom deze op status opgelost gezet :confused:)

De opmerking van Huijb is meer een mededeling, hij geeft aan dat hij je vraag van de sectie "Visual Basic" heeft verplaatst naar "Visual Basic for Applications". Op die manier krijg je waarschijnlijk meer reacties :)
 
Na de verwarring of de topic al dan niet op de juiste plaats staat, even terug naar de vraag :d
... ... ...Als ik in het bestand een artikelnummer invoer dat niet bestaat, dan wordt de wachtwoord beveiliging op het werkblad wel door de macro opgeheven, maar niet terug gezet, oftewel de werkbladen zijn niet meer beveiligd... ... ...

Dat kan enkel maar te maken hebben met het feit dat je niet door de code loopt die de beveiliging terug op zet :shocked:

Ik veronderstel dat je die beveiliging regelmatig op en af zet, of niet?
Mag ik je dan volgende 2 subroutines aanraden, één om de beveiliging op te zetten en één om de beveiliging af te halen
Code:
Public Sub UnProtectDataSheet(DataSheet As Worksheet)
'Paswoord van een worksheet halen
'
    DataSheet.Unprotect ("DitIsMijnPWRD")
    
End Sub


Public Sub ProtectDataSheet(DataSheet As Worksheet)
'Paswoord op worksheet zetten
'
    DataSheet.Protect Password:="DitIsMijnPWRD", _
                      DrawingObjects:=False, _
                      Contents:=True, _
                      Scenarios:=True, _
                      UserInterfaceOnly:=True, _
                      AllowFormattingRows:=True, _
                      AllowInsertingRows:=True, _
                      AllowInsertingHyperlinks:=True
    
End Sub


Met één lijntje in je code kan je nu eenvoudig de beveiliging op of af zetten.
Code:
        Call ProtectDataSheet(ActiveSheet)
        Call UnProtectDataSheet(ActiveWorkbook.Worksheets("Blad 007"))

Is geen oplossing voor je probleem maar zal misschien helpen om het bos door te bomen te zien... ... ...
en te bepalen waar er een "Call ProtectDataSheet(ActiveSheet)" ontbreekt :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan