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

tijdens uitvoeren van macro msg op scherm

Status
Niet open voor verdere reacties.

wilbert1967

Gebruiker
Lid geworden
19 jun 2004
Berichten
629
Hallo

Tijdens het uitvoeren van een macro zie ik de cursor over het scherm heen en weer gaan
hiervoor wil ik in de plaats zo lang de macro werkt een msg box oid in beeld hebben .

hoe moet dat?

wilbert
 
Je kunt op een apart werkblad een melding plaatsen of een userform maken en dit tonen en daarna de schermverversing uitzetten.
Dan laat je de rest van de macro lopen en aan het eind zet je schermverversing weer aan.
Je macro loopt ook nog eens een stuk sneller.

De code:

'Melding weergeven
Userform.show

'of iets van
worksheet("Melding").activate

'Schermverversing uitzetten
Application.ScreenUpdating = False

'rest van de macro

'Schermverversing aanzetten
Application.ScreenUpdating = True
 
Er zijn zelfs macro's gebouwd, die zo'n mooie voortgangsbalk laat zien.
Google bij op "progind.exe" (zonder aanhalingstekens)
 
Wilbert,

Wil je de Macro hier plaatsen, dan kunnen we kijken of er versnelling mogelijk is.
 
Ik heb zo'n beetje het idee dat als je bovenaan in je macro zet;

Application.ScreenUpdating = False

dat je dan de cursor in het geheel niet ziet en de macro veel sneller werkt waardoor het (misschien) niet nodig is om een melding te vertonen.
 
Wilbert,

Ik neem aan dat de macro's goed werkten.
Je had alleen last van beeldflikkeringen.
Als dit juist is, draai dan je laatste macro.
Ik heb alleen Application.ScreenUpdating = False
toegevoegd.

Sub MacroH053()
Dim bestandsnaam As String
Application.ScreenUpdating = False
On Error GoTo foutafhandeling
bestandsnaam = InputBox("Toets de bestandsnaam in")
Macro5 (bestandsnaam)
'UserForm2.Show
' Macro1 (bestandsnaam)
'foutafhandeling 91
Macro2
Macro3
Macro4
' foutafhandeling 1004
Macro11
Macro12
'vraag opslaan als bestand altijd .xls
Application.ScreenUpdating = True
'UserForm2.Hide
Exit Sub
foutafhandeling:
If Err.Number = 91 Or Err.Number = 1004 Then
Resume Next
Else
msg = "Fout # " & Str(Err.Number) & " werd gegenereerd door " _
& Err.Source & Chr(13) & Err.Description
MsgBox msg, , "Fout", Err.HelpFile, Err.HelpContext
End If
End Sub


De rest van de macro's krijg ik weinig vat opomdat ik de
gedachtengang niet goed kan volgen.
 
hoi

dank dit werkt ik zie niks meer maar ik wil nog wel dat de gebruiker een mededeling krijg zoals ik probeer met userform
echt bij userform moet de gebruiker op het kruisje klikken zodat alles verdergaat
hoe verhelp ik dat?

wilbert
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan