Avatar billede sejrskilde Nybegynder
13. november 2003 - 08:45 Der er 13 kommentarer

Problemer med Macro i word

Jeg har forsøgt at lave en macro som gør en markeret tekst blå, samtidigt med at den sætter en streg ude i venstere side. Indimellem kommer den med en "run-time error 5843 - one of the values passed to this method or property is out of range."

Tager man så og laver en debug er den linien
".LineWidth = Options.DefaultBorderLineWidt" som skaber problemet.

Hvordan for jeg fjernet denne fejl??
Avatar billede bufferzone Praktikant
13. november 2003 - 08:58 #1
Jeg tror ikke det er en fejl du har lavet, men word der bugger selv. Har du gennemført Office update, ellers prøv det. Du finder siden for office update når du går ind på siden for windows update, der er et faneblad du skal klikke på. Hvis du har mulighed for det, er det altid en god ide at lave en backup inden du updater
Avatar billede rvm Nybegynder
13. november 2003 - 08:58 #2
Må vi se hele makroen - eller i det mindste den WITH sætning som linien indgår i?

Du kan også sende dokumentet du tester på til mig rvejemad@csc.com, så kikker jeg nærmer på det hele *S*
Avatar billede sejrskilde Nybegynder
13. november 2003 - 09:22 #3
Herefter følger min makro. Hvis jeg sætter et "'" ved den linie som laver fejlen kører min makro uden problemer. Er den linie vigtig så jeg skal have den med?

Sub Macro1()
'
' Macro1 Macro
' Macro recorded 15. januar 2002 by DKMSP
'
    NormalTemplate.AutoTextEntries("Fil- og stinavn").Insert Where:= _
    Selection.Range
    Selection.TypeText Text:=" "
    NormalTemplate.AutoTextEntries("Forfatter, Sidenr., Dato").Insert Where:= _
        Selection.Range
End Sub
Sub Macro2()
'
' Macro2 Macro
' Macro recorded 15. januar 2002 by DKMSP
'
    CommandBars("Standard").Controls.Add Type:=msoControlButton, ID:=2205 _
        , Before:=21, Parameter:="Author, Page #, Date"
    NormalTemplate.AutoTextEntries("Author, Page #, Date").Insert Where:= _
        Selection.Range
    NormalTemplate.AutoTextEntries("Author, Page #, Date").Insert Where:= _
        Selection.Range
    NormalTemplate.AutoTextEntries("Author, Page #, Date").Insert Where:= _
        Selection.Range
    NormalTemplate.AutoTextEntries("Author, Page #, Date").Insert Where:= _
        Selection.Range
    Selection.HomeKey Unit:=wdLine, Extend:=wdExtend
    Selection.MoveUp Unit:=wdLine, Count:=4, Extend:=wdExtend
    Selection.Delete Unit:=wdCharacter, Count:=1
    NormalTemplate.AutoTextEntries("Author, Page #, Date").Insert Where:= _
        Selection.Range
    CommandBars("Standard").Controls(21).Delete
    CommandBars("Standard").Controls.Add Type:=msoControlButton, ID:=2205 _
        , Before:=21, Parameter:="Author, Page #, Date"
    CommandBars("Stop Recording").Visible = False
End Sub
Sub Sekretær()
'
' Sekretær Macro
' Macro recorded 10. november 2003 by MSP
'
    Selection.Font.Color = wdColorBlue
    With Selection.Borders(wdBorderLeft)
        .LineStyle = Options.DefaultBorderLineStyle
        .LineWidth = Options.DefaultBorderLineWidth
        .Color = Options.DefaultBorderColor
    End With
End Sub
Avatar billede sejrskilde Nybegynder
13. november 2003 - 09:23 #4
Der kom vist lidt for meget med. Det skulle kun være:

Sub Sekretær()
'
' Sekretær Macro
' Macro recorded 10. november 2003 by MSP
'
    Selection.Font.Color = wdColorBlue
    With Selection.Borders(wdBorderLeft)
        .LineStyle = Options.DefaultBorderLineStyle
        .LineWidth = Options.DefaultBorderLineWidth
        .Color = Options.DefaultBorderColor
    End With
End Sub
Avatar billede rvm Nybegynder
13. november 2003 - 10:22 #5
Du skal have linien med for at det virker. Jeg kan ikke få din makro til at fejle (og den ser også rigtig ud), så... hmmm
Avatar billede jkrons Professor
13. november 2003 - 11:00 #6
Jeg vil lige tilføje, at hos mig virker den upåklageligt - også uden den pågældende linie. Den fortæller jo også bare at din linie skal være defauult tykkelse.

Faktisk er det tilstrækkeligt til at opnår det, du ønsker:

    Selection.Font.Color = wdColorBlue
    Selection.Borders(wdBorderLeft).LineStyle = Options.DefaultBorderLineStyle
Avatar billede jkrons Professor
13. november 2003 - 11:02 #7
Men kun hvis du markerer hele afsnit. Er det kun en del af et afsnit sætter den en ramme omkring hele markeringen.
Avatar billede rvm Nybegynder
13. november 2003 - 22:31 #8
Ja - lad os være lavpraktiske - slet linien - den er som jkrons skriver, ikke nødvendig.
Avatar billede jkrons Professor
14. november 2003 - 12:12 #9
sejrskilde-> Virkede det? Eller får du stadig fejl?
Avatar billede rvm Nybegynder
21. november 2003 - 09:04 #10
sejrskilde-> Virkede det? Eller får du stadig fejl?
Avatar billede rvm Nybegynder
27. november 2003 - 14:39 #11
sejrskilde-> Virkede det? Eller får du stadig fejl?
Avatar billede jkrons Professor
27. november 2003 - 16:06 #12
rvm-> Åbenbart er problemet så stort at al tiden går med at løse det :-)
Avatar billede jkrons Professor
20. december 2003 - 13:37 #13
Gider du lige lukke dette spørgsmål - eller vende tilbage med info om, hvorfo9r løsningen evt. ikke virker?
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