| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5194 人关注过本帖
标题:在梅子论坛看到的一个Grid转Excl的程序,有点问题。
只看楼主 加入收藏
lianliming
Rank: 2
等 级:论坛游民
帖 子:29
专家分:18
注 册:2009-5-24
收藏
得分:0 
出现:“THISFORM只能在方法程序中使用错误!”提示,但忽略后能正确保存Excel文件能。如何纠正?请师傅们建言,感激!
2016-11-27 00:51
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1527
专家分:180
注 册:2006-6-3
收藏
得分:0 
学习一下。
2016-11-27 14:33
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3146
专家分:8408
注 册:2015-3-25
收藏
得分:0 
以下是引用lianliming在2016-11-27 00:51:43的发言:

出现:“THISFORM只能在方法程序中使用错误!”提示,但忽略后能正确保存Excel文件能。如何纠正?请师傅们建言,感激!

上面这个是自定义函数。你把定义函数的第1,2行去掉,把最后1行去掉。就可以在表单的COMMAND上直接运行。
2016-11-28 08:37
lianliming
Rank: 2
等 级:论坛游民
帖 子:29
专家分:18
注 册:2009-5-24
收藏
得分:0 
回复 13楼 mywisdom88
非常感谢!错误取消,程序通过。
2016-11-28 23:13
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:987
专家分:4946
注 册:2013-2-16
收藏
得分:0 
我在office2007、2010都测试过,没问题呢。
另外,谢谢你的代码,受你的启发,我直接把这一段代码做成Grid类了,导出功能放进Grid右键快捷菜单里去了,感觉这样子更好用。向原作者致敬。
2016-11-29 23:08
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3146
专家分:8408
注 册:2015-3-25
收藏
得分:0 
以下是引用厨师王德榜在2016-11-29 23:08:19的发言:

我在office2007、2010都测试过,没问题呢。
另外,谢谢你的代码,受你的启发,我直接把这一段代码做成Grid类了,导出功能放进Grid右键快捷菜单里去了,感觉这样子更好用。向原作者致敬。

那可能是我电脑问题,我的是2013,有问题,但我家的就没问题。
怎么做成类的。放上来看看。
2016-11-30 08:34
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:987
专家分:4946
注 册:2013-2-16
收藏
得分:0 
如下图,现在只能在表头的空白位置点右键弹出菜单,在表格中右键菜单我还没想好咋弄。
图片附件: 游客没有浏览图片的权限,请 登录注册
2016-11-30 08:44
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3146
专家分:8408
注 册:2015-3-25
收藏
得分:0 
以下是引用厨师王德榜在2016-11-30 08:44:10的发言:

如下图,现在只能在表头的空白位置点右键弹出菜单,在表格中右键菜单我还没想好咋弄。

做好了放上来看看。。
oColumn.COLUMNORDER=i0611 AND oColumn.VISIBLE=.T. AND oColumn.Width>0 &&列宽等于0的不处理,列隐藏不处理
我自己加了oColumn.Width,也就是用鼠标拉表格宽度=0时不导出,其他都是原作者的。
2016-11-30 08:55
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:987
专家分:4946
注 册:2013-2-16
收藏
得分:0 
好,那我直接放代码上来,效果是一样的。首先是Grid.RightClick的代码,
但是这个代码目前只有在表格的表头空白位置右击了,才会弹出来,
如果是在表格中的任意位置也要有快捷菜单弹出来的话,我还没想好,也欢迎大家来出主意 :
程序代码:
* 设计一个右键弹出式菜单,让用户可以选择导出到Excel或XML
LOCAL LHASdATA AS Boolean
LOCAL CSELECT AS String
CSELECT=""
IF THIS.ColumnCount>0 THEN 
    LHASdATA=.T.
ENDIF 
    Define Popup shtcut SHORTCUT Relative From Mrow(),Mcol()
    Define Bar 1 Of shtcut Prompt "导出到XML" ;
            SKIP For LHASdATA=.F.
    Define Bar 2 Of shtcut Prompt "导出到EXCEL" ;
            SKIP For LHASdATA=.F.
ON SELECTION POPUP shtcut  CSELECT=PROMPT( )

Activate Popup shtcut
DO CASE 
    CASE CSELECT="导出到XML" 
        MESSAGEBOX("抱歉,[导出到XML格式]功能尚未开发完毕,请等待后续版本。",64,"提示:")
    CASE CSELECT="导出到EXCEL"
        this.grid2excel            
    OTHERWISE 
ENDCASE 


至于“grid2excel”就是给类添加的一个方法,代码就是一楼那一段。
2016-11-30 10:05
lianliming
Rank: 2
等 级:论坛游民
帖 子:29
专家分:18
注 册:2009-5-24
收藏
得分:0 
回复 19楼 厨师王德榜
感谢你!辛苦了。
2016-11-30 19:37
快速回复:在梅子论坛看到的一个Grid转Excl的程序,有点问题。
数据加载中...
 
   



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

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