| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 101 人关注过本帖
标题:为什么 程序代码中的AutoFitBehavior(1)仅对生成的星期一课表有作用
只看楼主 加入收藏
王咸美
Rank: 1
等 级:新手上路
帖 子:711
专家分:3
注 册:2018-1-4
结帖率:97.67%
收藏
 问题点数:0 回复次数:0 
为什么 程序代码中的AutoFitBehavior(1)仅对生成的星期一课表有作用
下列程序代码中的AutoFitBehavior(1)仅对生成的星期一课表起作用,对生成的星期二至星期五的课表均不起作用,不知为何?现附上截图和代码,请高手赐教,万分感谢!!!
文件.rar (10.83 KB)

图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册


程序代码:
*!* 生成每天课表

CLOSE DATABASES
CLEAR ALL
cPath=ADDBS(JUSTPATH(SYS(16)))
SET DEFAULT TO (cPath)
USE kb20190101 ALIAS kb IN 0
USE jsrkb20190101 ALIAS jsrkb IN 0
PUBLIC cxkmc,i,j,m,cjsxm
* wjm=cpath+"mtkbmb.doc"
wjm="F:\temp15\mtkbmb.doc"
FOR m=1 TO 5
 wordApp=CREATEOBJECT("word.Application")
 wordApp.visible=.t.
 cStr=SUBSTR("一二三四五",1+(m-1)*2,2)
 wordTable=wordApp.Documents.Open(wjm)
 * cFileName=cPath+"学校日课总表[星期"+cStr+"]"+".doc"
 cFileName="F:\temp15\学校每天课表\"+"学校日课总表[星期"+cStr+"]"+".doc"
 wordApp.ActiveDocument.Content.Find.Execute('AB',.F.,.F.,.F.,.F.,.F.,.F.,.F.,.F.,'&cStr',2)
 SELECT kb
 FOR i=m*6-3 TO m*6+2
  FOR j=4 TO RECCOUNT()+3
    GO j - 3             && 对课表进行指针定位(班级定位)
    cxkmc=ALLTRIM(EVALUATE(FIELD(i)))
    SELECT jsrkb        
    FOR n=3 TO FCOUNT("jsrkb")
     GO j - 3
     IF FIELD(n)=cxkmc
      cjsxm=ALLTRIM(EVALUATE(FIELD(n)))
      cZdm=cxkmc+"["+cjsxm+"]"
      IF LEN(cZdm)>12
       wordTable.Tables.item(1).Cell(j,i-6*(m-1)).Range.font.size=9
      endif
      wordTable.Tables.item(1).Cell(j,i-6*(m-1)).Range.Text=cZdm
     ENDIF
    ENDFOR
    SELECT kb              
  ENDFOR
ENDFOR

*1* 将单元格中学科设置为宋体、粗体、9号字,任课教师姓名设置为楷体、9号字
wordApp.ActiveDocument.Tables(1).Cell(4, 3).Select
wordApp.Selection.MoveRight(3,71,1)
wordApp.Selection.Font.Name = "宋体"
wordApp.Selection.Font.Size = 10.5  && 五号字
wordApp.Selection.Font.Bold = .t.


do While wordApp.Selection.Find.Execute('[')
   wordApp.Selection.MoveRight(3, 1, 1)
   wordApp.Selection.Font.Name = "楷体"
   wordApp.Selection.Font.SIZE =9  && 小五
   wordApp.Selection.Font.Bold = .f.
   wordApp.Selection.MoveRight(3, 1, 0)
ENDDO

wordApp.Documents(1).Tables(1).AutoFitBehavior(1)  &&根据内容自动调整

*!* 保存退出
wordApp.Documents(1).SaveAs(cFileName)
wordapp.documents.Close  &&& 关闭工作区  
wordapp.QUIT             &&& 关闭
RELEASE wordApp
ENDFOR
RETURN


2025-03-27 12:37
快速回复:为什么 程序代码中的AutoFitBehavior(1)仅对生成的星期一课表有作用
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017514 second(s), 11 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved