Avatar billede martin_moth Mester
13. april 2013 - 17:55 Der er 4 kommentarer og
1 løsning

Opdatere caption mens VBA kode åbner en række filer

Jeg har en VBA kode til at åbne en masse excelfiler. Det tager 5-10 sek at åbne hver fil.

Jeg bruger en userform, hvor jeg gerne ville have en label (navn= lblProgressLoadFiles) til at vise at den åbner fil 1 af 20, 2 af 20 osv. Den label skal så opdateres hver gang en fil loades.


Altså er koden:

    For i = 0 To UBound(arrFilnavne)
        Workbooks.Open Filename:= arrFilnavne(i)
        lblProgressLoadFiles.Caption = "Åbner fil " & i & " af " & UBound(arrFilnavne)
    Next i

Men min label caption bliver IKKE opdateret løbende, kun når den er færdig med at åbne ALLE filer.

Hvordan får man den til at opdatere løbende? Er der en eller anden .Update man skal køre i hvert loop?
Avatar billede kabbak Professor
13. april 2013 - 18:29 #1
Private Sub CommandButton1_Click()
For i = 0 To 10000
     
        Label1.Caption = "Åbner fil " & i & " af 10000"
        Me.Repaint
    Next i
End Sub
Avatar billede kabbak Professor
13. april 2013 - 18:34 #2
For i = 0 To UBound(arrFilnavne)
      DoEvents
        Me.Repaint
        Workbooks.Open Filename:= arrFilnavne(i)
        lblProgressLoadFiles.Caption = "Åbner fil " & i & " af " & UBound(arrFilnavne)
    Next i


prøv at se om det virker
Avatar billede martin_moth Mester
14. april 2013 - 17:27 #3
Tak :-)
Avatar billede martin_moth Mester
14. april 2013 - 17:27 #4
Smid svar
Avatar billede kabbak Professor
14. april 2013 - 17:39 #5
et svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester