Avatar billede rodding Juniormester
10. januar 2002 - 08:06 Der er 8 kommentarer og
1 løsning

Macro udvidelse.

Jeg har en macro der kopierer linie fra et ark til et andet. Det kan godt vare en 20-30 sek. Problemet er at det er svært at se at den arbejder.

Så ønsket er en tilføjelse til macroen så jeg får en skilt/vindue op der for tæller at der kopieres og som fjerner vinduet igen når kopieringen er overstået.
Avatar billede fobian Nybegynder
10. januar 2002 - 08:51 #1
Du kan tilføje en Userform til dit VBAProject

Fra det modul, hvor du starter macroen kan du så
skrive:
UserForm1.Show

Private Sub UserForm_Activate()
Range(\"A1\").Select
    Selection.Copy
    Range(\"C1\").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    UserForm1.Hide
End Sub
Avatar billede fobian Nybegynder
10. januar 2002 - 08:56 #2
Undskyld svaret blev vist sendt inden jeg var færdig med at skrive...
Nå! men koden der starter med Private Sub UserFo..
skal du så skrive som kode til UserForm1.

I UserForm1 kan du tilføje noget tekst, som fortæller at der kopieres.

Avatar billede lrp Nybegynder
10. januar 2002 - 09:01 #3
Gå i Visual Basic-editoren. Opret et modul. Indsæt følgende kode i modulet:

Sub test()
  UserForm1.Show
End Sub

Opret en userform med navnet UserForm1 (kan selvfølgelig hedde noget andet, men så skal du huske at rette navnet i makroen \"test\". Tilpas userformen med labels, der indeholder den tekst, skiltet skal vise. I userformens kodeord tilføjes følgende kode:

Private Sub UserForm_Activate()
  Me.Repaint
  \'Indsæt koden fra din gamle makro her
  Unload Me
End Sub

Du har nu en makro med navnet \"test\" (kan selvfølgelig ændres efter behov\", der viser en userform. Når userformen aktiveres udføres noget kode (din gamle makro). Derefter lukkes userformen igen.
Avatar billede lrp Nybegynder
10. januar 2002 - 09:03 #4
\"I userformens kodeord\" = \"I userformens kodeark\"
Avatar billede janvogt Praktikant
10. januar 2002 - 09:07 #5
Prøv at sætte denne ind i starten af din makro.
Application.StatusBar = \"Please be patient...\"

I bunden af makroen skriver du følgende for at koble den fra:
Application.StatusBar = False
Avatar billede janvogt Praktikant
10. januar 2002 - 09:08 #6
Koden fungerer ved at indsætte en tekst på status-linien i bunden af dit Excel-ark.
Avatar billede rodding Juniormester
10. januar 2002 - 10:42 #7
Tak for budene.

Jeg forsøger mig når jeg kommer hjem fra arbejde.

Hilsen Preben
Avatar billede rodding Juniormester
10. januar 2002 - 20:55 #8
Det er svært at uddele point når det hele er 10-4.
Men eftersom jeg vist først fattede Irp\'s forklaring får han pointene.
Jan, din løsning er fin, jeg havde bare brug for plakaten i dette tilfælde.

Tak for hjælpen.

Preben
Avatar billede lrp Nybegynder
10. januar 2002 - 22:32 #9
Selv tak, og tak for points :-)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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