/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Hvordan stoppe en makro ?
Fra : Ole Johan Rossland


Dato : 19-02-01 09:34

Jeg leser engelsk fagstoff på skjermen og har fått laget en makro som lager
en ordliste over de engelske ordene som jeg må ha hjelp til å oversette. Den
måten jeg gjør det på er å starte makroen der jeg skriver inn det engelske
ordet og den norske oversettelsen. Ordlista legges på slutten av dokumentet.
Hvert ord ligger som et bokmerke, og det lages en hyperlink mot bokmerket.
Dersom det samme engelske ordet dukker opp flere ganger, skal også disse
merkes og linkes mot det samme bokmerket.

Problemet vi støtte på med å lage en loop som merker alle tilfellene av
samme ord, er å få stoppet denne loopen når den er kommet til bunns. Vi har
derfor laget makroen på en annen måte slik at jeg manuelt bekrefter om jeg
vil la makroen gå videre og søke etter det samme ordet om igjen. Denne
løsningen er imidlertid ikke helt god.

Løsningen jeg ønsker er følgende :
1) - at makroen "husker" linjenr og posisjon på hvor aktuelt bokmerke settes
inn
2) - at makroen forsatt går i loop, men at den stopper automatisk når den
søker opp linjenr og posisjon i pkt. 1

----------------------------------------------------------------------------
-
Sub Oversettelser()
On Error GoTo Err_Oversettelser

Dim strEngelskOrd As String
Dim strNorskOrd As String
Dim strMeldingstittel As String

strMeldingstittel = "Oversettelse Engelsk ---> Norsk"
strEngelskOrd = InputBox("Skriv inn engelsk ord", strMeldingstittel)
strNorskOrd = InputBox("Skriv inn det norske ordet for " & strEngelskOrd
& ":", strMeldingstittel)


Selection.EndKey Unit:=wdStory

Selection.TypeParagraph
With ActiveDocument.Bookmarks
.Add strEngelskOrd
End With
Selection.TypeText (strEngelskOrd & " = " & strNorskOrd)
Selection.TypeParagraph

Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:="1"
Selection.Find.ClearFormatting
With Selection.Find
.Text = " " & strEngelskOrd
End With

LeggTilHyperlink:
Selection.Find.Execute
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:="", _
SubAddress:=strEngelskOrd
If MsgBox("Vil du søke etter flere forekomster?", vbQuestion + vbYesNo,
strMeldingstittel) = vbYes Then
GoTo LeggTilHyperlink:
End If

Exit_Oversettelser:
Exit Sub

Err_Oversettelser:
MsgBox "Feilmelding " & Err.Number & vbCrLf & Err.Description
GoTo Exit_Oversettelser
End Sub






 
 
Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408897
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste