Marco fout melding op de focus

Status
Niet open voor verdere reacties.

PatrickSt

Gebruiker
Lid geworden
1 okt 2010
Berichten
38
Hallo,

Ik heb een aantal formulieren met queries en marco's nou heb ik een groen formulier en een rood formulier, op het groene staat de boodschap en op het rode de knoppen verdwijn, kom terug en einde, nou als ik op Verdwijn wil klikken krijg ik de volgende fout melding;

Code:
U kunt een besturingselement dat de focus heeft, niet verbergen.
------------------------

Macronaam : 
Opdracht-8-2.Verdwijn

Voorwaarde:

Actienaam:
WaardeInstellen

Argumenten:
[Forms]![Groenformulier]![Boodschap].[Visible]; No

Foutnummer:
2165

dit is mijn macro

<?xml version="1.0" encoding="UTF-16" standalone="no"?>
<UserInterfaceMacros xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application"><UserInterfaceMacro MinimumClientDesignVersion="14.0.0000.0000"><Statements/><Sub Name="Initieer"><Statements><Action Name="OpenForm"><Argument Name="FormName">Groenformulier</Argument></Action><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Boodschap]</Argument><Argument Name="Expression">"Dit is de eerste keer, druk op verdwijn."</Argument></Action><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Teller]</Argument><Argument Name="Expression">1</Argument></Action></Statements></Sub><Sub Name="Verdwijn"><Statements><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Boodschap].[Visible]</Argument><Argument Name="Expression">No</Argument></Action><Action Name="SetValue"><Argument Name="Item">[Kom terug].[Enabled]</Argument><Argument Name="Expression">Yes</Argument></Action><Action Name="GoToControl"><Argument Name="ControlName">Kom terug</Argument></Action><Action Name="SetValue"><Argument Name="Item">[Verdwijn].[Enabled]</Argument><Argument Name="Expression">No</Argument></Action></Statements></Sub><Sub Name="Kom terug"><Statements><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Teller]</Argument><Argument Name="Expression">[Forms]![Groenformulier]![Teller]+1</Argument></Action><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Boodschap].[Visible]</Argument><Argument Name="Expression">Yes</Argument></Action><ConditionalBlock><If><Condition>2=[Forms]![Groenformulier].[Teller]</Condition><Statements><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Boodschap]</Argument><Argument Name="Expression">"Dit is de tweede keer.."</Argument></Action></Statements></If></ConditionalBlock><ConditionalBlock><If><Condition>3=[Forms]![Groenformulier].[Teller]</Condition><Statements><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Boodschap]</Argument><Argument Name="Expression">"Dit is de derde keer.."</Argument></Action></Statements></If></ConditionalBlock><ConditionalBlock><If><Condition>4=[Forms]![Groenformulier].[Teller]</Condition><Statements><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Boodschap]</Argument><Argument Name="Expression">"Dit is de vierde keer.."</Argument></Action></Statements></If></ConditionalBlock><ConditionalBlock><If><Condition>5=[Forms]![Groenformulier].[Teller]</Condition><Statements><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Boodschap]</Argument><Argument Name="Expression">"Ben je het nog niet flauw? dit is de vijfde keer.."</Argument></Action></Statements></If></ConditionalBlock><ConditionalBlock><If><Condition>6=[Forms]![Groenformulier].[Teller]</Condition><Statements><Action Name="SetValue"><Argument Name="Item">[Forms]![Groenformulier]![Boodschap]</Argument><Argument Name="Expression">"Nu ga ik niet meer weg.."</Argument></Action><Action Name="GoToControl"><Argument Name="ControlName">Einde</Argument></Action><Action Name="SetValue"><Argument Name="Item">[Kom terug].[Enabled]</Argument><Argument Name="Expression">No</Argument></Action><Action Name="StopMacro"/></Statements></If></ConditionalBlock><Action Name="SetValue"><Argument Name="Item">[Verdwijn].[Enabled]</Argument><Argument Name="Expression">Yes</Argument></Action><Action Name="GoToControl"><Argument Name="ControlName">Verdwijn</Argument></Action><Action Name="SetValue"><Argument Name="Item">[Kom terug].[Enabled]</Argument><Argument Name="Expression">No</Argument></Action></Statements></Sub><Sub Name="Einde"><Statements><Action Name="CloseWindow"><Argument Name="ObjectType">Form</Argument><Argument Name="ObjectName">Groenformulier</Argument><Argument Name="Save">No</Argument></Action><Action Name="CloseWindow"><Argument Name="ObjectType">Form</Argument><Argument Name="ObjectName">Opdracht-8-2</Argument><Argument Name="Save">No</Argument></Action></Statements></Sub></UserInterfaceMacro></UserInterfaceMacros>
 
Behalve dat die macro gruwelijk onleesbaar is, en alleen daarom al vervangen zou moeten worden door VBA code, is de foutmelding wel duidelijk: blijkbaar probeer je een object dat de focus nog heeft te verbergen. En dat mag niet. De oplossing is heel simpel: zet, voordat je het object verbergt, de focus op iets anders, zoals een andere knop of een tekstvak. Wil je niks (laten) zien op je formulier, dan kun je een dummy tekstvak maken met de breedte 0cm en dat de focus geven. Werkt prima als workaround.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan