copying a table without clipboard

H

HenryM679

How can I copy a table from one doc to another doc without using the clipboard?

I need to make this app run on an website and possibly multiuser.

Thanks for any help
 
J

Jay Freedman

HenryM679 said:
How can I copy a table from one doc to another doc without using the
clipboard?

I need to make this app run on an website and possibly multiuser.

Thanks for any help

Declare two Range objects. Set the first one to the range of the existing
table, and set the second one to a collapsed point in the other document
where you want the copy. Then assign the .FormattedText property of the
second range to be equal to the .FormattedText property of the first range.
Something like this:

Dim RgSrc As Range, RgDest As Range

Set RgSrc = SrcDoc.Tables(1).Range

Set RgDest = DestDoc.Range
RgDest.Collapse wdCollapseEnd

RgDest.FormattedText = RgSrc.FormattedText

--
Regards,
Jay Freedman
Microsoft Word MVP
Email cannot be acknowledged; please post all follow-ups to the newsgroup so
all may benefit.
 
H

HenryM679

Thanks for your help but I still get a type mismatch error. I modified it
some to fit my app. It runs in ASP.net.

Here is what I have now.

Dim rgSrc As Word.Range = wrdIn.ActiveDocument.Tables(7).Range
wrdOut.Selection.MoveStart()
wrdOut.Selection.Find.ClearFormatting()
With wrdOut.Selection.Find
.Text = "__ASSUMPTIONS__"
.Replacement.Text = ""
.Forward = True
.Wrap = Word.WdFindWrap.wdFindStop
.Format = False
.MatchCase = True
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
wrdOut.Selection.Find.Execute()
Dim rgDst As Word.Range
rgDst = wrdOut.Selection.Range
rgDst.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
rgDst.FormattedText = rgSrc.FormattedText
 
J

Jay Freedman

I don't know ASP.Net syntax, so I probably can't help much. But in VBA, the Set
keyword is required when you try to assign a value to a Range object (or any
object), so the line third from the end should be

Set rgDst = wrdOut.Selection.Range
 
H

HenryM679

Thanks for your help. You gave me some new ideas.
Set is not used in .net. Visual Studio removes it if I put it in.
 
H

HenryM679

I have tried all I can thing of and still get errors. Here is what I have now.

Dim rgSrc As Word.Range = wrdIn.ActiveDocument.Tables(7).Range
wrdOut.Selection.GoTo(What:=Word.WdGoToItem.wdGoToBookmark,
Name:="ASSUMPTIONS")
wrdOut.Selection.InsertRows(rgSrc)

and I get this error

This method or property is not available because some or all of the object
does not refer to a table

Any ideas?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top