VBA --> Paragraaf teken vervangen door Enter

Pagina: 1
Acties:
  • 264 views sinds 30-01-2008
  • Reageer

  • a3konijn
  • Registratie: Oktober 2000
  • Laatst online: 26-08 19:21
Stel ik heb onderstaande tesktblokken

Aanhef Naam
Adres
Postcode Woonplaats

Nu wil ik met een macro (VBA) het document doorlopen en ieder paragraafteken (omgekeerde P met dubbele streep) vervangen door een spatie. Zodanig dat dit onstaat:

Aanhef Naam Adres Postcode Woonplaats

Ik heb de volgende code, maar deze werkt niet met paragraaftekens:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Sub VervangParagraafTeken()
    Dim rngA As Word.range
    Dim LastPar As Boolean
    For X = 1 To ActiveDocument.Words.Count
        Set rngA = ActiveDocument.Words(X)
        LastPar = IsLastCharParagraph(rngA, True)
    Next X
End Sub

Function IsLastCharParagraph(ByRef rngTextRange As Word.range, Optional blnTrimParaMark As Boolean) As Boolean
    Dim strLastAChar As String
    
    strLastChar = Right$(rngTextRange.Text, 1)

    If InStr(strLastChar, Chr$(13)) = 0 Then
      IsLastCharParagraph = False
      Exit Function
    Else
      IsLastCharParagraph = True
      If Not blnTrimParaMark = True Then
        Exit Function
      Else
        Do
            rngTextRange.SetRange rngTextRange.Start, rngTextRange.Start + rngTextRange.Characters.Count - 1
            Call IsLastCharParagraph(rngTextRange, True)
        Loop While InStr(rngTextRange.Text, Chr$(13)) <> 0
      End If
    End If
End Function

Wie weet wat ik fout doe?

  • mOrPhie
  • Registratie: September 2000
  • Laatst online: 08-09 23:55

mOrPhie

❤️❤️❤️❤️🤍

dit kan makkelijker volgens mij moet dit werken:
code:
1
2
3
Function FromClrfToSpace(strBuffer as string) as string
    FromClrfToSpace = replace(strbuffer,chr(13)+chr(10)," ")
End Function

of
code:
1
2
3
Function FromClrfToSpace(strBuffer as string) as string
    FromClrfToSpace = replace(strbuffer,vbCrlf," ")
End Function

werkt ook waarschijnlijk. je moet het zelf ff inbouwen in jou vba app. Houdt er rekening dat die p met dubbele streep die jij bedoeld, niet in de doc zelf zit, maar een instelling is in wordt om de "commands return" visueel weer te geven. En harde enter bestaat namelijk uit een Command Return en een Line Feed. En dat is dus Crlf ;)

Een experimentele community-site: https://technobabblenerdtalk.nl/. DM voor invite code.