koddump:enhanceindexentries
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
koddump:enhanceindexentries [2008/03/11 17:01] – function padNumber(number,size); 85.228.105.199 | koddump:enhanceindexentries [2011/11/24 20:47] (current) – old revision restored jetthe | ||
---|---|---|---|
Line 70: | Line 70: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | |||
+ | Halvoptad kod, går ~dubbelt så snabbt som den ooptade: | ||
+ | <code vb> | ||
+ | Sub NewEnhanceIndexEntries() | ||
+ | Dim doc As Document | ||
+ | Dim fld As Field | ||
+ | Dim temp As String | ||
+ | Dim temp2 As String | ||
+ | Dim omsg As String | ||
+ | Dim matches As MatchCollection | ||
+ | Dim re3 As RegExp | ||
+ | Set re3 = New RegExp | ||
+ | re3.Global = False | ||
+ | re3.Pattern = " | ||
+ | Dim match As match | ||
+ | Dim mval As String | ||
+ | |||
+ | Dim cnt As Integer | ||
+ | cnt = 0 | ||
+ | | ||
+ | Set doc = ActiveDocument | ||
+ | For Each fld In doc.Fields | ||
+ | fld.Select | ||
+ | If fld.Type = wdFieldIndexEntry Then | ||
+ | cnt = cnt + 1 | ||
+ | temp = fld.Code | ||
+ | If (re3.Test(temp) = True) Then | ||
+ | Set matches = re3.Execute(temp) | ||
+ | For Each match In matches | ||
+ | mval = match.Value | ||
+ | Next | ||
+ | | ||
+ | Dim size As Integer | ||
+ | mval = Mid(mval, 2) | ||
+ | mval = Left(mval, Len(mval) - 1) | ||
+ | size = 4 | ||
+ | If (Len(mval) < (size + 1)) Then | ||
+ | Do While (Len(mval) < size) | ||
+ | mval = " | ||
+ | Loop | ||
+ | End If | ||
+ | | ||
+ | temp2 = Left(temp, Len(temp) - 1) | ||
+ | temp2 = temp2 & ";" | ||
+ | With Selection.Find | ||
+ | .Text = temp | ||
+ | .Replacement.Text = temp2 | ||
+ | .Forward = True | ||
+ | .Wrap = wdFindStop | ||
+ | .Format = False | ||
+ | .Execute Replace: | ||
+ | End With | ||
+ | Else | ||
+ | ' NOOP | ||
+ | End If | ||
+ | End If | ||
+ | Next | ||
+ | Set fld = Nothing | ||
+ | Set doc = Nothing | ||
+ | omsg = " | ||
+ | MsgBox (omsg & cnt) | ||
+ | End Sub | ||
+ | </ | ||
+ | |||
+ | |||
koddump/enhanceindexentries.1205251304.txt.gz · Last modified: 2008/03/11 17:01 by 85.228.105.199