以下是引用ssq1109在2006-8-8 21:35:37的发言:但据我理解: If Len(myS.Range.Paragraphs(1).Range.Text) = 2 Then 中“ = 2 ”是否应为“ = 3 ”,“ = 2 ”是基于什么? 关闭屏幕更新后程序能运行更快吧。 Debug.Print的作用我在另一网站上查到了。 谢谢! 今天有一偶然发现: 我原将守柔版主帮我改的代码在一WIN 98SE+OFFICE 2000的机器上运行,并不能达到目的,后将 If Len(myS.Range.Paragraphs(1).Range.Text) = 2 改为: If Len(myS.Range.Paragraphs(1).Range.Text) = 3 能够正确运行,之后较长时间未用此代码,今天又要用它,但是在一WIN 2000+OFFICE 2003上运行,结果不起作用,后我又将“= 3”再改回为“= 2”又可正确运行。 这是为什么? 为了使其有通用性,能否改为: Dim myS As InlineShape For Each myS In ActiveDocument.InlineShapes If Len(myS.Range.Paragraphs(1).Range.Text) = 2 Or _ Len(myS.Range.Paragraphs(1).Range.Text) = 3 Then myS.Range.Paragraphs.Alignment = wdAlignParagraphCenter End If Next 请高人指点。 |