View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Rick Rothstein \(MVP - VB\) Rick Rothstein \(MVP - VB\) is offline
external usenet poster
 
Posts: 2,202
Default How to know which cell caracters are underlined

It appears that there is more than one type of underline (single, double,
none), so the Underline property is not a Boolean value. Try this for a
general "is it underlined (either single or double)"...

bMixed = Cells(5,1).Characters(Start:=i, Length:=1).Font.Underline <
xlUnderlineStyleNone

Note: The above is supposed to be a single line statement (in case your
newsreader wraps it).

If you want to check for a specific kind of underline, the predefined
constants to check against appear to be xlUnderlineStyleSingle and
xlUnderlineStyleDouble.

Rick


"Alex St-Pierre" wrote in message
...
Hi!
I use VBA automation to apply table excel formatting into word. In this
program, all work except the Font.Underline.
bMixed = Cells(5,1).Characters(Start:=i, Length:=1).Font.Underline return
always true for any i if there's one underlined character in the cell.. Is
there a way to know which characters are underlined?
All other properties (bold, alignment, italic, superscript, etc. is
correct)
Any idea?
Thank you!
Alex


With Range(Cells(iLine, jBegin), Cells(iLine, jBegin)) 'Word table
range
.HorizontalAlignment =
ThisWorkbook.Sheets(SheetName).Range(sLoadData).Ho rizontalAlignment
.VerticalAlignment =
ThisWorkbook.Sheets(SheetName).Range(sLoadData).Ve rticalAlignment

For i = 1 To Len(.Value)
With .Characters(Start:=i, Length:=1).Font
.Bold =
ThisWorkbook.Sheets(SheetName).Range(sLoadData).Ch aracters(Start:=i,
Length:=1).Font.Bold
.Superscript =
ThisWorkbook.Sheets(SheetName).Range(sLoadData).Ch aracters(Start:=i,
Length:=1).Font.Superscript
.Subscript =
ThisWorkbook.Sheets(SheetName).Range(sLoadData).Ch aracters(Start:=i,
Length:=1).Font.Subscript
.Italic =
ThisWorkbook.Sheets(SheetName).Range(sLoadData).Ch aracters(Start:=i,
Length:=1).Font.Italic
.Underline =
ThisWorkbook.Sheets(SheetName).Range(sLoadData).Ch aracters(Start:=i,
Length:=1).Font.Underline 'THIS DOESN'T WORK
End With
Next i
--
Alex St-Pierre