10. januar 2002 - 08:06Der 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.
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
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.
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.
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.
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.