• 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.

Knop werkt niet in kopiebestand

Status
Niet open voor verdere reacties.

gGerretje

Gebruiker
Lid geworden
12 mrt 2008
Berichten
439
Hallo helpers,

Dit is wel een mooie voor jullie (hoop ik).

Ik heb een bestand A met daarin o.a. een werkblad 'codes'. Op dat blad staat een opdrachtknop cmd_WijzigWachtWoord (voor de gebruikers).
Vanuit werkblad '1' kopieer ik werkblad 'codes' naar een nieuw bestand en sla dat op als bestand B.

Omdat mijn backup-bestand B niet beveiligd hoeft te zijn met een wachtwoord heb ik alvorens te kopiëren de beveiliging eraf gehaald.
Maar ik heb dus op werkblad 'codes' in bestand B ook geen behoefte meer aan die opdrachtknop cmd_WijzigWachtWoord.
Die wil ik dus onzichtbaar maken.

Bijgaand een deel van de code (onder de knop op werkblad '1') die ik gebruik bij het maken en wegschrijven van de kopie van werkblad 'codes' :

Code:
        Sheets("codes").Select
        
        ActiveSheet.Unprotect Password:=WachtWoord
        Sheets("codes").Copy
        Sheets("codes").Select

        Sheets("codes").Range("A1").Value = "KwartaalBackup"
        cmd_WijzigWachtWoord.Enable = False

Probleem is nu dat de zaak vastloopt bij de laatste regel.

Fout 424 tijdens uitvoering: object vereist

Herkent hij nu die opdrachtknop niet?
Dat vind ik dan vreemd, want als ik de uitvoering afbreek zie ik het kopiebestand staan mét de genoemde opdrachtknop op het werkblad 'codes'.

Heeft iemand een idee?

Bedankt alvast voor het meedenken!
Ger
 
Gewoon verwijderen:

Code:
For Each oShape in Activesheet.Shapes
oShape.delete
Next
 
Hallo Jan Karel,

Het idee is goed, maar het kan niet want er staan ook 2 andere knoppen (om te sorteren) en die heb ik wel nodig.

Voor de duidelijkheid (want dat staat los van de vraag):
In bestand A moet de beveiliging eraf om te sorteren maar in bestand B natuurlijk niet.
In bestand A vraag ik dus een wachtwoordinvoer en vergelijk die met het actuele wachtwoord dat staat op het verborgen blad 'beveiliging'.
Maar dat blad 'beveiliging' hoeft niet mee gekopieerd te worden, dus mag daar daar in bestand B ook niet naar gevraagd worden.
Dat is ook de reden van het woordje KwartaalBackup in A1 van bestand B. Want als dat er staat vraagt hij niet om een wachtwoord (if then else) en begint meteen te sorteren.
Op die manier had ik ook die wachtwoordaanpassing wel kunnen omzeilen, maar dan staat die knop er voor de ....... jeweetwel.

Ik wil dus die knop onzichtbaar maken (of toch op zijn minst Disabled, maar dat geeft natuurlijk dezelfde foutmelding).

Bedankt voor je voorstel.

Met vriendelijke groet,
Ger
 
Laatst bewerkt:
Hallo Jan Karel,

Werkt perfect.
Heb je er nog een verklaring voor?
Ik had het betreffende blad toch geselecteerd?
En ik heb zo'n soortgelijke
Code:
cmd_WijzigWachtWoord.Enable = False
al vaker gebruikt en dan werkte het wel.

In ieder geval geweldig bedankt voor je snelle oplossing.

Met vriendelijke groet,
Ger
 
als je de naam van de knop direct in de code zet, dan verwijs je naar een object op het werkblad waar de code zelf in "loopt", dat is dus de knop op het originele werkblad.
Overigens geef ik de voorkeur aan de knoppen van de formulierelementen, die zijn betrouwbaarder.
 
O, zo. Dan verwees ik dus naar de knop in mijn bestand A.
En omdat ik backup-bestand B geselecteerd had, deed hij daar dus ook niets mee.

Dat is duidelijk.

bedankt ook voor je toelichting.

Met vriendelijke groeten,
Ger
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan