| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2693 人关注过本帖
标题:VFP9 无法调用VBA语句 Set ActiveSheet.HPageBreaks(2).Location = Range(" ...
只看楼主 加入收藏
xuxinxu
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-13
结帖率:0
收藏
 问题点数:0 回复次数:23 
VFP9 无法调用VBA语句 Set ActiveSheet.HPageBreaks(2).Location = Range("A50")
[目的]
想在固定行前添加分页符

[找到的方法]
方法一: eole.Worksheets("Sheet1").Rows(50).PageBreak = 1

方法二:  eole.ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Cells(50, 1) 此方法没实验,因为结尾部分感觉也出问题

方法三: Set eole.ActiveSheet.HPageBreaks(1).Location = eole.Range("A50")

[问题描述]
法一和法二不能除掉EXCEL系统自带的虚线分页符(此情况出现于自己设置的分页符在一页以外)
法三在VBA中运行完美,定位精确,不出现虚线分页符
但是在VFP中方法三连保存都不允许,更别谈编译了,提示的错误是:“命令中含有不能识别的短语或关键字”

希望哪位同志能帮助一下, VBA 中set 语句如何在VFP中使用,另外,eole.Selection.Delete  -4162 结尾的数字在VFP中也导致无法保存。
搜索更多相关主题的帖子: Set 方法 分页 Location VBA 
2021-10-28 11:07
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10539
专家分:42927
注 册:2014-5-20
收藏
得分:0 
不好乱猜
最好给出完整可运行测试的示例相关文件
2021-10-28 11:36
xuxinxu
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-13
收藏
得分:0 
程序1.zip (1.03 KB)
2021-10-28 12:20
xuxinxu
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-13
收藏
得分:0 
继续顶起
2021-10-28 18:34
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:763
专家分:2503
注 册:2011-5-8
收藏
得分:0 
    Set eole.ActiveSheet.HPageBreaks(1).Location = eole.Range("A50")
多个了Set

dBase有人接盘了。
2021-10-28 18:40
xuxinxu
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-13
收藏
得分:0 
把set去掉以后,不再报错,但是语句不起作用了。
2021-10-28 20:51
xuxinxu
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-13
收藏
得分:0 
没有在指定的行前添加分页符
2021-10-28 20:52
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10539
专家分:42927
注 册:2014-5-20
收藏
得分:0 
在EXCEL用VBA不用set测试 ActiveSheet.HPageBreaks(1).Location = Range("A50") 也是无作用
按VBA要求给对象赋值要用set,VFP可以用VBS脚本来使用set,不知有无其他更好的办法。
2021-10-28 22:50
sych
Rank: 4
等 级:业余侠客
威 望:7
帖 子:235
专家分:286
注 册:2019-10-11
收藏
得分:0 
#DEFINE xlPageBreakAutomatic    -4105    &&Excel 自动添加分页符。
#DEFINE xlPageBreakManual    -4135    &&手动插入分页符。
#DEFINE xlPageBreakNone    -4142    &&工作表中不插入分页符。
xlApp = GETOBJECT(, "Excel.Application")
If VARTYPE(xlApp)<>"O"
    MESSAGEBOX("没有打开 Excel","温馨提示")
    retu
ENDIF
xlapp.ActiveSheet.ResetAllPageBreaks  &&重置分页符
xlapp.cells(6,2).PageBreak = xlPageBreakNone  &&取消分页符
xlapp.cells(7,1).PageBreak = xlPageBreakManual  &&在你需要的地方插入分页符,如果你设置的分页长度大于页面长度,系统会自动添加一个分页符
2021-10-29 08:59
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10539
专家分:42927
注 册:2014-5-20
收藏(1)
得分:0 
按每页行数添加行分页符
图片附件: 游客没有浏览图片的权限,请 登录注册

程序代码:
eole = CREATEOBJECT("Excel.application")
eole.displayalerts = 0
eole.SheetsInNewWorkbook = 1
eole.Workbooks.Add
eole.Worksheets("sheet1").Activate
eole.ActiveWindow.WindowState = 2
FOR i=1 TO 100
   FOR j=1 TO 5
       eole.cells[i,j] = i
   ENDFOR
ENDFOR
nRow = 5  &&每页行数
nPageBreaks = INT(eole.CountA(eole.ActiveSheet.Range("A:A"))/nRow)  &&分页符数
FOR i=1 TO nPageBreaks
    eole.Range("A"+TRANSFORM(i*nRow+1)).Select
    eole.ActiveSheet.HPageBreaks.Add(eole.ActiveCell)
ENDFOR
eole.Visible=.T. 
2021-10-29 10:29
快速回复:VFP9 无法调用VBA语句 Set ActiveSheet.HPageBreaks(2).Location = Ra ...
数据加载中...
 
   



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

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016749 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved