Reply
 
Thread Tools Display Modes
  #1   Report Post  
Posted to microsoft.public.word.tables
Greg
 
Posts: n/a
Default A Bug I Think in Word 2000

Enter a simple table and add a bit of text to a few cells.

Put a check in: ToolOptionsEditUse smart cut and paste

Type a few words after the table and copy it to the clipboard.

Now run:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
End Sub


This has interesting results.
1. If you selected and copied a complete word or phrase (without the
leading space). The result is the text is pasted to all cells as
expected, but a run time error is generated.

Run Time Error '5825' Object has been deleted. :-(

2. If you copied only part of a word or a word/phase including a
leading
space, all is well.

I have discovered that the cause of this behaviour is
ToolsOptionsEditUse smart cut and paste. With that option off, the
procedure works as expected with no run time error. That is the cause,
but I don't really understand the why.

I suppose that knowing this you could use an error handler:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
On Error GoTo Handler
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
Exit Sub
Handler:
End Sub

Does anyone know if this bug, as I have called it, is documented, why
it happends, or a more appropriate workaround?

Thanks.

  #2   Report Post  
Posted to microsoft.public.word.tables
Jezebel
 
Posts: n/a
Default A Bug I Think in Word 2000

Must be something more to it, Greg. I tried it exactly as you describe and
can't create the problem. What are your Smart cut and paste settings?



"Greg" wrote in message
oups.com...
Enter a simple table and add a bit of text to a few cells.

Put a check in: ToolOptionsEditUse smart cut and paste

Type a few words after the table and copy it to the clipboard.

Now run:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
End Sub


This has interesting results.
1. If you selected and copied a complete word or phrase (without the
leading space). The result is the text is pasted to all cells as
expected, but a run time error is generated.

Run Time Error '5825' Object has been deleted. :-(

2. If you copied only part of a word or a word/phase including a
leading
space, all is well.

I have discovered that the cause of this behaviour is
ToolsOptionsEditUse smart cut and paste. With that option off, the
procedure works as expected with no run time error. That is the cause,
but I don't really understand the why.

I suppose that knowing this you could use an error handler:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
On Error GoTo Handler
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
Exit Sub
Handler:
End Sub

Does anyone know if this bug, as I have called it, is documented, why
it happends, or a more appropriate workaround?

Thanks.



  #3   Report Post  
Posted to microsoft.public.word.tables
Greg Maxey
 
Posts: n/a
Default A Bug I Think in Word 2000

Jezebel,

I don't know if you noticed the complete subject, but the error only occurs
in Word2000(well I don't know about Word97, or 2002). It doesn't occur in
Word2003.

When ToolsOptionEditSmart cut and paste is checked the error occurs if I
select and copy a complete word or phrase to the clipboard. It doesn't
occur if I select and copy the middle part of a word, the tail end of a
word, or a complete word including a leading space.

If ToolsOptionsEditSmart cut and paste is uncheck, then the error doesn't
occur.

I have only tested on my Word2000 machine at work, so the problem could be
isolated to that machine.

Cheers.


--
Greg Maxey/Word MVP
See:
http://gregmaxey.mvps.org/word_tips.htm
For some helpful tips using Word.

"Jezebel" wrote in message
...
Must be something more to it, Greg. I tried it exactly as you describe and
can't create the problem. What are your Smart cut and paste settings?



"Greg" wrote in message
oups.com...
Enter a simple table and add a bit of text to a few cells.

Put a check in: ToolOptionsEditUse smart cut and paste

Type a few words after the table and copy it to the clipboard.

Now run:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
End Sub


This has interesting results.
1. If you selected and copied a complete word or phrase (without the
leading space). The result is the text is pasted to all cells as
expected, but a run time error is generated.

Run Time Error '5825' Object has been deleted. :-(

2. If you copied only part of a word or a word/phase including a
leading
space, all is well.

I have discovered that the cause of this behaviour is
ToolsOptionsEditUse smart cut and paste. With that option off, the
procedure works as expected with no run time error. That is the cause,
but I don't really understand the why.

I suppose that knowing this you could use an error handler:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
On Error GoTo Handler
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
Exit Sub
Handler:
End Sub

Does anyone know if this bug, as I have called it, is documented, why
it happends, or a more appropriate workaround?

Thanks.





  #4   Report Post  
Posted to microsoft.public.word.tables
Jezebel
 
Posts: n/a
Default A Bug I Think in Word 2000

You're right, I didn't notice that. As for a workaround: perhaps instead of
collapsing the cell range and pasting, try using Range.InsertAfter ?





"Greg Maxey" wrote in message
...
Jezebel,

I don't know if you noticed the complete subject, but the error only
occurs in Word2000(well I don't know about Word97, or 2002). It doesn't
occur in Word2003.

When ToolsOptionEditSmart cut and paste is checked the error occurs if
I select and copy a complete word or phrase to the clipboard. It doesn't
occur if I select and copy the middle part of a word, the tail end of a
word, or a complete word including a leading space.

If ToolsOptionsEditSmart cut and paste is uncheck, then the error
doesn't occur.

I have only tested on my Word2000 machine at work, so the problem could be
isolated to that machine.

Cheers.


--
Greg Maxey/Word MVP
See:
http://gregmaxey.mvps.org/word_tips.htm
For some helpful tips using Word.

"Jezebel" wrote in message
...
Must be something more to it, Greg. I tried it exactly as you describe
and can't create the problem. What are your Smart cut and paste settings?



"Greg" wrote in message
oups.com...
Enter a simple table and add a bit of text to a few cells.

Put a check in: ToolOptionsEditUse smart cut and paste

Type a few words after the table and copy it to the clipboard.

Now run:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
End Sub


This has interesting results.
1. If you selected and copied a complete word or phrase (without the
leading space). The result is the text is pasted to all cells as
expected, but a run time error is generated.

Run Time Error '5825' Object has been deleted. :-(

2. If you copied only part of a word or a word/phase including a
leading
space, all is well.

I have discovered that the cause of this behaviour is
ToolsOptionsEditUse smart cut and paste. With that option off, the
procedure works as expected with no run time error. That is the cause,
but I don't really understand the why.

I suppose that knowing this you could use an error handler:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
On Error GoTo Handler
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
Exit Sub
Handler:
End Sub

Does anyone know if this bug, as I have called it, is documented, why
it happends, or a more appropriate workaround?

Thanks.







  #5   Report Post  
Posted to microsoft.public.word.tables
Greg Maxey
 
Posts: n/a
Default A Bug I Think in Word 2000

Good idea. I will try that Monday when I am back at that machine.

--
Greg Maxey/Word MVP
See:
http://gregmaxey.mvps.org/word_tips.htm
For some helpful tips using Word.


Jezebel wrote:
You're right, I didn't notice that. As for a workaround: perhaps
instead of collapsing the cell range and pasting, try using
Range.InsertAfter ?




"Greg Maxey" wrote in message
...
Jezebel,

I don't know if you noticed the complete subject, but the error only
occurs in Word2000(well I don't know about Word97, or 2002). It
doesn't occur in Word2003.

When ToolsOptionEditSmart cut and paste is checked the error
occurs if I select and copy a complete word or phrase to the
clipboard. It doesn't occur if I select and copy the middle part of
a word, the tail end of a word, or a complete word including a
leading space. If ToolsOptionsEditSmart cut and paste is uncheck, then
the error
doesn't occur.

I have only tested on my Word2000 machine at work, so the problem
could be isolated to that machine.

Cheers.


--
Greg Maxey/Word MVP
See:
http://gregmaxey.mvps.org/word_tips.htm
For some helpful tips using Word.

"Jezebel" wrote in message
...
Must be something more to it, Greg. I tried it exactly as you
describe and can't create the problem. What are your Smart cut and
paste settings? "Greg" wrote in message
oups.com...
Enter a simple table and add a bit of text to a few cells.

Put a check in: ToolOptionsEditUse smart cut and paste

Type a few words after the table and copy it to the clipboard.

Now run:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
End Sub


This has interesting results.
1. If you selected and copied a complete word or phrase (without
the leading space). The result is the text is pasted to all cells
as expected, but a run time error is generated.

Run Time Error '5825' Object has been deleted. :-(

2. If you copied only part of a word or a word/phase including a
leading
space, all is well.

I have discovered that the cause of this behaviour is
ToolsOptionsEditUse smart cut and paste. With that option off,
the procedure works as expected with no run time error. That is
the cause, but I don't really understand the why.

I suppose that knowing this you could use an error handler:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
On Error GoTo Handler
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
Exit Sub
Handler:
End Sub

Does anyone know if this bug, as I have called it, is documented,
why it happends, or a more appropriate workaround?

Thanks.





  #6   Report Post  
Posted to microsoft.public.word.tables
Greg Maxey
 
Posts: n/a
Default A Bug I Think in Word 2000

Jezebel,

I forgot, I already tried that and it works fine:

Sub Test3()
Dim MyData As DataObject
Dim myString As String
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range

Set MyData = New DataObject
MyData.GetFromClipboard
myString = MyData.GetText
Set tbl = ActiveDocument.Tables(1)
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.InsertAfter myString
Next
End Sub



Any thoughts on why it happens? I mean I know it happens because smart cut
and paste is enabled, but why do you suppose that is?


--
Greg Maxey/Word MVP
See:
http://gregmaxey.mvps.org/word_tips.htm
For some helpful tips using Word.


Jezebel wrote:
You're right, I didn't notice that. As for a workaround: perhaps
instead of collapsing the cell range and pasting, try using
Range.InsertAfter ?




"Greg Maxey" wrote in message
...
Jezebel,

I don't know if you noticed the complete subject, but the error only
occurs in Word2000(well I don't know about Word97, or 2002). It
doesn't occur in Word2003.

When ToolsOptionEditSmart cut and paste is checked the error
occurs if I select and copy a complete word or phrase to the
clipboard. It doesn't occur if I select and copy the middle part of
a word, the tail end of a word, or a complete word including a
leading space. If ToolsOptionsEditSmart cut and paste is uncheck, then
the error
doesn't occur.

I have only tested on my Word2000 machine at work, so the problem
could be isolated to that machine.

Cheers.


--
Greg Maxey/Word MVP
See:
http://gregmaxey.mvps.org/word_tips.htm
For some helpful tips using Word.

"Jezebel" wrote in message
...
Must be something more to it, Greg. I tried it exactly as you
describe and can't create the problem. What are your Smart cut and
paste settings? "Greg" wrote in message
oups.com...
Enter a simple table and add a bit of text to a few cells.

Put a check in: ToolOptionsEditUse smart cut and paste

Type a few words after the table and copy it to the clipboard.

Now run:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
End Sub


This has interesting results.
1. If you selected and copied a complete word or phrase (without
the leading space). The result is the text is pasted to all cells
as expected, but a run time error is generated.

Run Time Error '5825' Object has been deleted. :-(

2. If you copied only part of a word or a word/phase including a
leading
space, all is well.

I have discovered that the cause of this behaviour is
ToolsOptionsEditUse smart cut and paste. With that option off,
the procedure works as expected with no run time error. That is
the cause, but I don't really understand the why.

I suppose that knowing this you could use an error handler:

Sub Test()
Dim tbl As Word.Table
Dim cel As Word.Cell
Dim rng As Word.Range
Set tbl = ActiveDocument.Tables(1)
On Error GoTo Handler
For Each cel In tbl.Range.Cells
Set rng = cel.Range
rng.MoveEnd wdCharacter, -1
rng.Collapse wdCollapseEnd
rng.Paste
Next
Exit Sub
Handler:
End Sub

Does anyone know if this bug, as I have called it, is documented,
why it happends, or a more appropriate workaround?

Thanks.



  #7   Report Post  
Posted to microsoft.public.word.tables
Jezebel
 
Posts: n/a
Default A Bug I Think in Word 2000


Any thoughts on why it happens? I mean I know it happens because smart
cut and paste is enabled, but why do you suppose that is?


Are you able to identify the line that throws the error?

To hazard a guess as to cause: from your account, all cells are actually
processed, so the error comes at the end of the loop. Perhaps the smart
cut-and-paste, in trying to deal with the superfluous space, is shifting an
internal range pointer, so that on the final iteration it thinks there is
another cell to process, then throws the error when it finds there isn't
one.


  #8   Report Post  
Posted to microsoft.public.word.tables
Greg Maxey
 
Posts: n/a
Default A Bug I Think in Word 2000

I think you are right. I just didn't know how to put it in technical lingo.

--
Greg Maxey/Word MVP
See:
http://gregmaxey.mvps.org/word_tips.htm
For some helpful tips using Word.


Jezebel wrote:
Any thoughts on why it happens? I mean I know it happens because
smart cut and paste is enabled, but why do you suppose that is?


Are you able to identify the line that throws the error?

To hazard a guess as to cause: from your account, all cells are
actually processed, so the error comes at the end of the loop.
Perhaps the smart cut-and-paste, in trying to deal with the
superfluous space, is shifting an internal range pointer, so that on
the final iteration it thinks there is another cell to process, then
throws the error when it finds there isn't one.



Reply
Thread Tools
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
window title file name gbp Microsoft Word Help 12 December 25th 05 06:48 PM
Does Word have a QuickCorrect/Quick Word option like WordPerfect? CW New Users 2 December 20th 05 05:54 PM
In Word, how do I surpress headers and footers on page 2 Bill Microsoft Word Help 1 December 15th 05 06:13 PM
is word perfect compatible with office word? Noreen Microsoft Word Help 1 May 11th 05 11:17 PM
How do I create & merge specific data base & master documents? maggiev New Users 2 January 12th 05 11:30 PM


All times are GMT +1. The time now is 05:03 PM.

Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 Microsoft Office Word Forum - WordBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Word"