![]() |
|
|
|
#1
|
|||
|
|||
|
I'm trying to devise a code to return a specific character in a specific paragraph. Can someone help? Thanks!
Code:
Sub ChrSix() 'The sixth character in the first word of paragraph 5 is "." (Title.) With ActiveDocument If .Paragraphs(5).Range.Words(1).Characters(6) = "." Then MsgBox "Found" Else MsgBox "Not Found" End If End With End Sub |
|
#2
|
|||
|
|||
|
The "." after Title is not the sixth character for the first word. It is the first characters of the second Word ". "
Code:
Sub ChrSix()
'The sixth character in the first word of paragraph 5 is "." (Title.)
With ActiveDocument
If .Paragraphs(5).Range.Words(2).Characters(1) = "." Then
MsgBox "Found"
Else
MsgBox "Not Found"
End If
End With
End Sub
See for yourself:
Sub ScratchMacro()
'A basic Word Macro coded by Gregory K. Maxey
Dim oPar As Paragraph, oWord As Range
Set oPar = ActiveDocument.Range.Paragraphs(5)
For Each oWord In oPar.Range.Words
oWord.Select
Next
lbl_Exit:
Exit Sub
End Sub
|
|
#3
|
|||
|
|||
|
Thank you, Gmaxey! That was a typo, I meant Words(1). That code was part of the larger set here below. It works, but perhaps it can be made more efficient? Thanks a lot!
Code:
Sub ChrSixBis()
With ActiveDocument
If .Paragraphs(5).Range.Words(1) = "title" And .Paragraphs(5).Range.Characters(6) = "." _
Or .Paragraphs(5).Range.Words(1) = "Title" And .Paragraphs(5).Range.Characters(6) = "." _
Or .Paragraphs(5).Range.Words(1) = "TITLE" And .Paragraphs(5).Range.Characters(6) = "." Then
.Paragraphs(5).Range.Style = "myStyle"
.Paragraphs(5).Range.Words(1).Case = wdLowerCase
.Paragraphs(5).Range.Words(1).Font.SmallCaps = True
Else
MsgBox "Not Found"
End If
End With
End Sub
|
|
#4
|
||||
|
||||
|
This might be easier
Code:
Sub ChrSixBis()
With ActiveDocument.Paragraphs(5).Range
If LCase(.Text) Like "title.*" Then
.Style = "Heading 1"
.Words(1).Case = wdLowerCase
.Words(1).Font.SmallCaps = True
Else
MsgBox "Not Found"
End If
End With
End Sub
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
|
#5
|
|||
|
|||
|
Thank you very much indeed, Guessed! Could you please explain the magics of '*' ?
|
|
#6
|
||||
|
||||
|
The * is 'something else'. That test is basically saying does the paragraph start with the string "title." and then followed by anything else.
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
|
#7
|
|||
|
|||
|
I see. Thanks a lot!
|
|
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Replacing font for a specific character | wagicz | PowerPoint | 1 | 03-16-2021 03:13 PM |
| Add paragraph return between two specific character | jeffreybrown | Word | 2 | 03-30-2017 02:45 PM |
Extract Line of Text w/ specific characters up to the paragraph character, send to Excel
|
dmarie123 | Word VBA | 10 | 07-20-2015 12:16 AM |
Macro to Insert text into the beginning on specific paragraphs unless the paragraph is blank
|
caboy | Word VBA | 2 | 04-01-2015 07:00 AM |
How can select from a specific character to another character
|
mohsen.amiri | Word | 2 | 02-19-2015 11:38 PM |