Ureader.com  
Microsoft software help and Community
   home   |   control panel login   |   archive   |  
 
Word
application.errors
conversions
docmanagement
drawing.graphics
formatting.longdocs
international
internet.assistant
mail
mailmerge.fields
menustoolbars
newusers
numbering
oleinterop
pagelayout
printingfonts
setup.networking
spelling.grammar
tables
vba.addins
vba.beginners
vba.customization
vba.general
vba.userforms
web.authoring
word6-7macros
word97vba
  
 
date: Fri, 23 Nov 2007 13:51:00 -0800,    group: microsoft.public.word.vba.customization        back       


Split table cells   
Hi!
In a word table, the cell(2,2) contains this informations:
Male/Female (enter)
20/30 (enter)
30/40 (enter)
40/50 (enter)
etc.
I'm wondering if there's a way to detect that there's a "/" in the cell and 
split the informations in two columns?
1) Look if there is a "/" and split the cells in two (vertical split)
2) Put all the informations at the left of the "/" in the left column and 
right informations in the right column (for each line).
Thank you!
Alex
-- 
Alex St-Pierre
date: Fri, 23 Nov 2007 13:51:00 -0800   author:   Alex St-Pierre

Re: Split table cells   
This should do it:

Dim myrange As Range, myarray As Variant, str1 As String, str2 As String, i 
As Long
With ActiveDocument.Tables(1).Cell(2, 2)
    Set myrange = .Range
    If InStr(myrange, "/") > 0 Then
        myrange.Text = Replace(myrange.Text, Chr(13), "/")
        myarray = Split(myrange.Text, "/")
        .Split 1, 2
    End If
End With
str1 = ""
For i = 0 To UBound(myarray) - 2 Step 2
    str1 = str1 & myarray(i) & vbCr
Next i
str1 = Left(str1, Len(str1) - 1)
str2 = ""
For i = 1 To UBound(myarray) - 1 Step 2
    str2 = str2 & myarray(i) & vbCr
Next i
str2 = str2 & myarray(UBound(myarray))
str2 = Replace(str2, Chr(13) & Chr(13), "")
ActiveDocument.Tables(1).Cell(2, 2).Range.Text = str1
ActiveDocument.Tables(1).Cell(2, 3).Range.Text = str2


-- 
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"Alex St-Pierre"  wrote in message 
news:E202666B-4459-41AE-B1E0-29F5C252D66A@microsoft.com...
> Hi!
> In a word table, the cell(2,2) contains this informations:
> Male/Female (enter)
> 20/30 (enter)
> 30/40 (enter)
> 40/50 (enter)
> etc.
> I'm wondering if there's a way to detect that there's a "/" in the cell 
> and
> split the informations in two columns?
> 1) Look if there is a "/" and split the cells in two (vertical split)
> 2) Put all the informations at the left of the "/" in the left column and
> right informations in the right column (for each line).
> Thank you!
> Alex
> -- 
> Alex St-Pierre
date: Sat, 24 Nov 2007 14:54:28 +1000   author:   Doug Robbins - Word MVP

Google
 
Web ureader.com


    COPYRIGHT 2007, YARDI TECHNOLOGY LIMITED, ALL RIGHT RESERVE  |   contact us