Avatar billede haps Nybegynder
17. juni 2004 - 15:58 Der er 9 kommentarer og
1 løsning

VBA form og overførsel af data til dokument

Jeg er ved at lave et dokument hvor jeg har en masse felter der skal udfyldes. Mange af disse felter går igen flere gange, og derfor har jeg tænkt mig til at det kunne være smart at lave en VBA form med en række felter som kan udfyldes én gang, hvorefter værdien fra disse felter bliver smidt ud de steder hvor teksten skal stå.
På nuværende tidspunkt har jeg lavet formen, og de 5 felter, og værdien bliver kastet ind i en række variabler. Problemet opstår ved at jeg ikke ved hvordan jeg overfører disse variabler til dokumentet, således at teksten kommer til at stå rigtigt...
Avatar billede jkrons Professor
18. juni 2004 - 07:43 #1
Det nemmeste er nok at indsætte bogmærker der, hvor teksten fra formen skal stå - og så udskifte bogmærker med tekst via kode.
Avatar billede jkrons Professor
18. juni 2004 - 07:56 #2
Lav en knap på din form, med denne kode på (udskifter et enkelt bogmærke). Den forudsætter at du har et bogmærke, der hedder b1, som skal udskiftes med den tekst, der står i ruden b1. Bemærk, at teksten kan først ses i dokumentet, når formen lukkes.

    Set BMRange = ActiveDocument.Bookmarks("b1").Range
    BMRange.Text = Me!TB1.Text
    ActiveDocument.Bookmarks.Add "b1", BMRange
Avatar billede jkrons Professor
18. juni 2004 - 07:56 #3
Du skal selvfølge gentage koden for dine forskellige bogmærker og tekstbokse.
Avatar billede jkrons Professor
18. juni 2004 - 08:02 #4
Jeg bør i øvrigt nok tilføje, at hvis der er rigtigt mange bogmærker, kan koden godt blive lidt uoverskuelig, men i så fald kan man lave en suvbrutine til udskiftningen, som så kaldes for hver bogmærke, der skal udskiftes.
Avatar billede haps Nybegynder
18. juni 2004 - 08:49 #5
Hvad betyder TB1.text i denne sammenhæng??

BMRange.Text = Me!TB1.Text
Avatar billede haps Nybegynder
18. juni 2004 - 09:18 #6
Når jeg benytter koden som du skriver, får jeg fejlen: "object doesn't support this proberty or method"
Avatar billede jkrons Professor
18. juni 2004 - 09:20 #7
me!tb1.text betyder bare, at der på din form er en tekstboks, med navnet TB1, og at teksten fra denne skal indsættes på det pågældende bogmærke. Så du skal altså på din form have en tekstboks med det pågældende navn.
Avatar billede haps Nybegynder
18. juni 2004 - 09:25 #8
yes.. det fandt jeg ud af... men derefter kom jeg frem til den fejl jeg beskrev...
Avatar billede haps Nybegynder
18. juni 2004 - 09:29 #9
sålangt, så godt... nu er jeg kommet ud over den fejl, men får nu fejlen: "området kan ikke slettes"...
Avatar billede jkrons Professor
18. juni 2004 - 11:03 #10
Undskyld forsinkelsen - jeg er desværre nødt til at arbejde ind i mellem :-)

Har du mulighed for at sende dit dokument, så skal jeg se på det lidt senere. Du kan sende til jkr@lyngby.nu
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
Tag et kursus i Word og øg effektiviteten

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