| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5777 人关注过本帖
标题:求助VFP如何在EXCEL的thisworkbook中写入宏
只看楼主 加入收藏
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
结帖率:87.5%
收藏
已结贴  问题点数:20 回复次数:23 
求助VFP如何在EXCEL的thisworkbook中写入宏
求助VFP如何在EXCEL的thisworkbook中写入宏
搜索更多相关主题的帖子: VFP EXCEL 写入  
2018-10-22 13:28
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:610
专家分:1784
注 册:2017-7-16
收藏
得分:0 
NO不能
2018-10-22 13:35
kesc
Rank: 2
等 级:论坛游民
威 望:1
帖 子:84
专家分:10
注 册:2006-10-11
收藏
得分:0 
用VFP生成宏,再手工粘贴到thisworkbook,或者用VFP直接操纵EXCEL执行宏代码所要实现的动作

[此贴子已经被作者于2018-10-22 15:28编辑过]

2018-10-22 15:13
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
收藏
得分:0 
网上查到的这个可以但是,只写入到类模块,我希望能写到Thisworkbook中或Sheet2...中
oXL = Createobject("Excel.Application")
*!* oXL.Visible = .t.
 
oBook=oXL.Workbooks.Add()
oSheet = oBook.Sheets(1)
 
Text to cc Noshow Pretext 1+2
    Public Sub DoKbTest(oSheetToFill As Object)
    Dim i As Integer, j As Integer
    Dim sMsg As String
    For i = 1 To 10
        For j = 1 To 2
            sMsg = Str(i) & "," & Str(j)
            oSheetToFill.Cells(i, j).Value = sMsg
        Next j
    Next i
    End Sub
EndText
 
Try
    oVBE = oXL.VBE.ActiveVBProject
    oErr = Null
Catch To oErr
Endtry
 
If !Isnull(oErr) And oErr.ErrorNo == 1943
    Text to cMsg Noshow Pretext 1+2
        当前的 Excel 配置不允许执行这个宏,请检查 Excel 配置。
 
        请确认勾选了: 可靠发行商中的 “信任对 Visual Basic 项目”的访问
    EndText
    Messagebox(cMsg, 0, '')
    oXL.Visible = .T.
    (1).Controls(6).Controls(14).Controls(3).Execute()
Endif
 
Try
    om = oXL.VBE.ActiveVBProject.VBComponents.Add(1)
    om.CodeModule.AddFromString(cc)
    oXL.Run("DoKbTest", oSheet)
    oXL.Visible = .T.
Catch To oErr
    Messagebox(oErr.Message + 0h0d0a0d0a + '你没有正确设置安全选项。', 0, '')
    oXL.Quit
    oXL = Null
Endtry
收到的鲜花
  • 厨师王德榜2018-10-24 09:47 送鲜花  3朵   附言:好文章,有用!
2018-10-22 15:27
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
收藏
得分:0 
om = oXL.VBE.ActiveVBProject.VBComponents.Add(1)
     om.CodeModule.AddFromString(cc)
不知道怎样设置
2018-10-22 15:28
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
收藏
得分:0 
还有
1.在“模块1”中插入代码
如果需要在“Sheet1”、“Thisworkbook”、或“Userform1”中操作,用只需将下面的“模块1”换成相应的名称即可。
方法1:
在模块的开始增加代码,增加的代码放在公共声明option,全局变量等后面。
Sub AddCode1()
 ThisWorkbook.VBProject.VBComponents("模块1").CodeModule.AddFromString _
   "sub aTest()" & Chr(10) & _
   "msgbox ""Hello""" & Chr(10) & _
   "end sub"
End Sub
按这个模式编写程序提示错误。
2018-10-22 15:30
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
收藏
得分:0 
哪位朋友帮助解决一下,谢谢
2018-10-22 15:31
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:0 
以下是引用yll148在2018-10-22 13:28:54的发言:

求助VFP如何在EXCEL的thisworkbook中写入宏


这个问题我以前也问过,没解决。


后来我采用:先制作好一个写有宏的EXCEL文档 ,再用VFP将数据写入到这个EXCEL中,这样一来,这个EXCEL中有数据、有宏,也就满足需求了。

只求每天有一丁点儿的进步就可以了
2018-10-22 16:13
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
VFP控制EXCEL不行吗

坚守VFP最后的阵地
2018-10-22 18:10
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1711
专家分:3318
注 册:2012-2-29
收藏
得分:0 
赞成9楼sdta的,excel中执行宏,能完成的操作,也可以通过vfp操作excel达到同样效果的。
2018-10-22 18:24
快速回复:求助VFP如何在EXCEL的thisworkbook中写入宏
数据加载中...
 
   



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

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