Verplaatsen/sluiten van een userform

Status
Niet open voor verdere reacties.

ludos

Gebruiker
Lid geworden
13 feb 2005
Berichten
25
Beste VBA users.
Ik heb een programmaatje gemaakt in Excel waarin ik via een userform allerlei gegevens kan wegschrijven in een excel werkblad. Tot zover geen problemen - dit werkt naar behoren. Ik wil nu echter verhinderen dat andere gebruikers rechtstreeks in het werkblad terecht kunnen komen.
Vraag: bestaat er programmacode om het sluiten van een userform te verhinderen - om het minimaliseren van een userform te verhinderen en het verplaatsen van een userform te verhinderen.

Wij danken iedereen uitbundig voor elke hulp.:D

In blijde afwachting

LudoS
 
Verwijder controlbox van het form.
Het form wordt nu getoond zonder mini- en maximaliseer mogelijkheden tevens is het kruisje verdwenen.
Daarbij kan je het form modaal opnenen:

frm.Show vbModal

Dit zorgt ervoor dat de gebruiker binnen deze applicatie niet buiten je form kan klikken.
Let op: Als je geen knop op je form maakt om het te sluiten of er niet voor zorgt dat het form gesloten wordt dan heb je een probleem. Het programma is dan alleen via de taskmanager af te sluiten.

Weest gegroet,
Guus
 
controlbox

Ave Guus,

bedankt voor je snelle reactie.
Maar kan je mij er ook bij vertellen hoe je zo een controlbox kan verwijderen. :confused:

Kun je dan het userform nog verplaatsen? Want dat wil ik ook verhinderen.

groetjes

Ludo
 
Hai, :D

Aangezien we het hier over VBA hebben kan hetgeen Guus zegt eigenlijk niet. Dwz niet binnen VBA (Denk dat Guus dit binnen formulieren in VB bedoeld)

Bij een MSForms userform kun je de controlbox niet uitzetten. Je kunt deze eventueel wel met grof materiaal verwijderen. Windows API's dus! (Zou ik als beginner niet mee gaan beginnen.)

Jij kunt beter de QueryClose Event van het Userform gebruiken om het event van het sluitkruis (QueryClose) af te vangen en de gebruiker erop te wijzen dat hij een andere knop moet gebruiken)

Overigens worden UserForms standaard Modaal getoont in Office en als dat niet zo is dan staat de eigenschap ShowModal van het UserForm op False...dus even op True zetten..

Plak deze code in jou Userform om het sluitkruis te blokkeren:
Code:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    If CloseMode = vbFormControlMenu Then
        Cancel = True
        Me.Caption = "Foei..foei!"
    End If
End Sub

Succes! :thumb:
 
Ben bang dat vriend joost gelijk heeft. Ik ben helemaal VB minded en heb erg veel in VBA geprogrammeerd, maar Joost heeft gelijk.:rolleyes:
 
Hai Granny, :D

Geeft niets hoor...gebeurt mij ook zo vaak....

@Ludos...fijn dat je eruit bent! :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan