Ga naar inhoud

macro voor Word 2013


andreavdg

Aanbevolen berichten

Hallo,

 

Iemand die me kan zeggen hoe men via een macro een vette tekst kan selecteren om na die tekst een dubbel punt te zetten?

De tekst is een zin die aan het begin staat en kan variëren in lengte. Dus zowel korte als lange zinnen.

voorbeeld:

Dit is de zin in vette tekst die moet geselecteerd worden om een dubbel punt achter te zetten: dit is tekst die volgt in standaard tekst

 

Alvast bedankt 

andrea

Link naar reactie
Delen op andere sites

Probeer dit:

Sub macro1()
Dim b, x, y, myrange
With ActiveDocument.Paragraphs(1).Range
x = .Start: b = .End
End With
x = 0
Do Until x > b
Set myrange = ActiveDocument.Range(Start:=x, End:=x + 1)
With myrange
If .Font.Bold = True Then
y = x
Do Until .Font.Bold = False
Set myrange = ActiveDocument.Range(Start:=y, End:=y + 1)
y = y + 1
Loop
Set myrange = ActiveDocument.Range(Start:=1, End:=y - 1)
myrange.InsertAfter ":"
Exit Sub
End If
End With
x = x + 1
Loop
End Sub

 

aangepast door alpha
Link naar reactie
Delen op andere sites

Bedankt Alpha, maar de macro wordt enkel maar uitgevoerd op de eerste zin.

Als ik naar de volgende zin ga wordt er weer een dubbel punt gezet bij de eerste zin. Dus 2x dubbel punt in 1e zin.

Heb ook geprobeerd om een reeks zinnen te selecteren en dan macro uitvoeren maar terug hetzelfde, weer een bijkomend dubbel punt in eerste zin.

 

Ik heb zo'n 150 bladen.

Is het niet mogelijk om ook een sneltoets een de macro toe te voegen?

 

Groetjes,

Andrea

Link naar reactie
Delen op andere sites

Andrea schreef:

Quote

De tekst is een zin die aan het begin staat...

- Daar kon ik redelijkerwijs niets anders onder verstaan dan: aan het begin van het document.

Daarom heb ik de macro zo gemaakt dat die (zoals je kunt zien als je de macro goed bekijkt) in de eerste alinea van het document zoekt naar de eerste vette tekst die in die alinea staat en die wordt aangevuld met een dubbele punt, zoals je wenste. Als in de volgende zin van de eerste alinea ook vette tekst staat, dan wordt daar niets mee gedaan. Overal waar je in een tekst op Enter hebt gedukt, heb je een nieuwe alinea gemaakt, dat weet je toch?

- Als mijn antwoord niet is wat je wil, wat wil je dan wel, want dat maak je niet duidelijk.

Quote

Is het niet mogelijk om ook een sneltoets een de macro toe te voegen?

Natuurlijk is dat mogelijk, maar je maakt je er wel héél gemakkelijk vanaf. Je moet zelf ook eens wat proberen te doen! Een forum is immers vooral bedoeld om mensen te helpen die bezig zijn een oplossing te zoeken en even niet verder kunnen, niet om kant-en-klare oplossingen te geven aan mensen die te lui zijn om ook maar het minste zelf te doen. Een sneltoets toewijzen aan een macro is echt niet moeilijk.

aangepast door alpha
Link naar reactie
Delen op andere sites

Helaas gaf je geen antwoord op de vraag wat je precies wil, daarom heb ik de macro maar gemaakt zoals ik denk dat je hem wil.

Met onderstaande code wordt in elke alinea aan de eerste aaneengesloten vette tekst een dubbele punt toegevoegd.

Sub macro1()
Dim a, b, c, p As Paragraph, x, myrange
With ActiveDocument
pgr = .Paragraphs.Count
For Each p In .Paragraphs
With p.Range
a = .Start: b = .End
End With
x = 0: c = 0
Do Until a = b
Set myrange = ActiveDocument.Range(Start:=a, End:=a + 1)
With myrange
If .Font.Bold = True Then
x = a
Do Until .Font.Bold = False
Set myrange = ActiveDocument.Range(Start:=x, End:=x + 1)
x = x + 1
Loop
c = x
Set myrange = ActiveDocument.Range(Start:=a, End:=c - 1)
myrange.InsertAfter ":"
GoTo nxt
End If
End With
a = a + 1
Loop
a = a - 1
nxt:
Next p
End With
End Sub

Om in Word een sneltoets aan een macro toe te wijzen:
- Kies Bestand - Opties - Lint aanpassen.
- Kies bij "Kies opdrachten uit" Macro's.
- Selecteer Project.NewMacros.macro1 en klik op "Aanpassen".
- Selecteer onder "Categorieën Macro's en selecteer aan de rechterkant macro1
- Beslis of je de macro wiltoewijzen aan alle documenten (Normal.dotm) of alleen aan het actieve document.
- Plaats de cursor in het vak "Druk op nieuwe sneltoets".
- Toets de gewenste sneltoetscombinatie en klik op "Toewijzen".
- Klik op Sluiten en Ok.

Je kunt ook een icoon voor de macro in de "Werkbalk snelle toegang" plaatsen, maar dan moet je opletten dat je daar niet op klikt in documenten waarin dat niet de bedoeling is.
 

Link naar reactie
Delen op andere sites

Gast
Dit topic is nu gesloten voor nieuwe reacties.
×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.