28. januar 2004 - 13:08Der er
4 kommentarer og 2 løsninger
Fejl! Ukendt argument for parameter
Vi er i gang med, at opgradere fra Office 97 til Office 2003.
Dette giver desværre nogle problemer, hvad angår vores skabeloner.
Alle steder, hvor vi har brugt "automatisk" felter står der "Fejl! Ukendt argument for parameter", hvis de åbnes med Word 2003.
Vi har lokaliseret fejlen til, at være den bagved liggende kode i Word, som fra 97 til 2003 er skiftet fra dansk til engelsk.
Vi har konstrueret et VBA script, som låser skabelonen op, viser felter og laver en søg/erstat af felterkoder, f.eks. "førstestort" bliver til "FirstCap" osv. osv.
I nogle tilfælde virker dette, men andre gange skal vi fysisk ind og genoprette feltet med de nye engelske betegnelser.
Er der nogen, som har været ude for dette, som kan yde lidt assistance. Evt. komme med en bedre "løsning" end vi har.
Jkrons: Jeg har self fundet løsningen, men eftersom dit link gav mig en af koderne, som jeg skulle bruge får du 50 point for din hjælp...
Jeg smider lige koden her, så du kan bruge den selv, hvis du har lyst. Der er stadig et par små fejl og koden er ikke optimeret, så kunne sikkert være "pænere".
------------------
Sub Felter() ' ' Felter Makro ' Denne makro søger efter Word97 felter med danske betegnelser og ændre dem til engelske Word200x format. ' Application.ScreenUpdating = False Application.DisplayAlerts = wdAlertsNone
If ActiveDocument.ProtectionType <> wdNoProtection Then ActiveDocument.Unprotect End If If ActiveWindow.View.ShowFieldCodes = False Then ActiveWindow.View.ShowFieldCodes = Not ActiveWindow.View.ShowFieldCodes End If
' Søg og erstat alle danske betegnelser med engelske.
Call DoReplace
Selection.WholeStory Selection.Fields.Update
' Søg og erstat alle danske betegnelser med engelske i Hovedet af dokumentet
For i = 1 To 2 ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext Next
If ActiveWindow.View.ShowFieldCodes = True Then ActiveWindow.View.ShowFieldCodes = Not ActiveWindow.View.ShowFieldCodes End If If ActiveDocument.ProtectionType = wdNoProtection Then ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True End If
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.