设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 3650|回复: 9
打印 上一主题 下一主题

[帮助] 求救呀.窗体数据至WORD 套打

[复制链接]
跳转到指定楼层
1#
发表于 2009-12-21 07:35:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yxf614 于 2009-12-21 16:08 编辑




请各位看下.万分谢谢!!!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2009-12-21 09:16:40 | 只看该作者
本帖最后由 yxf614 于 2009-12-21 16:12 编辑

这贴不能沉哟.,谢谢大家来看下.
我的代码如下:
Private Sub 打印_Click()
DoCmd.RunCommand acCmdSaveRecord    '打印前先保存记录

    Const maxRecordsInOnepage As Integer = 8
    Dim currentDetailsRecords As Integer
    Dim totalPages As Integer
    Dim I, N As Integer
    '使用DAO操作打开明细记录集
    Dim rstDetails As DAO.Recordset
   Set rstDetails = CurrentDb.OpenRecordset("SELECT 买方姓名,经办人, 联系电话,备注 FROM 合同签约 WHERE 房号=" & Me.客房编号)
    '如果没有记录 , 不执行下面程序
    If rstDetails.EOF Then Exit Sub

    '为了能得到记录总数量,DAO记录集要先把记录集位置移到最后,否则得不到RECORDCOUNT
    rstDetails.MoveLast
    rstDetails.MoveFirst
    currentDetailsRecords = rstDetails.RecordCount
    If currentDetailsRecords <= maxRecordsInOnepage Then    '一页
        totalPages = 1
    Else
        If currentDetailsRecords Mod maxRecordsInOnepage = 0 Then   '除得尽,
            totalPages = currentDetailsRecords / maxRecordsInOnepage
        Else    '除不尽
            totalPages = Int(currentDetailsRecords / maxRecordsInOnepage) + 1
        End If
    End If

    On Error Resume Next
    Dim docApp As Object
    Set docApp = GetObject(, "Word.Application")    '得到当前的WORD程序对象,如果WORD已经运行
    If Err Then   '出错说明WORD没有运行
        Err.Clear
        Set docApp = CreateObject("Word.Application")    '创建WORD对象
        
        If Err Then
            MsgBox "操作中没有装WORD程序!", vbQuestion, "销售签约"
            Exit Sub
        End If
    End If
    docApp.Visible = False   '隐藏WORD程序,防止在执行程序时用户误操作
    Dim doc As Object
    Dim win As Object
    For I = 1 To totalPages   '多页的处理,使用循环
        Set doc = docApp.Documents.Add(CurrentProject.Path & "\合同模板.doc") '使用定义好的模板创建新文件
        Set win = doc.ActiveWindow

        With win.Selection.Find    '使用查找和替换

            .Text = "[业主姓名]"
            .Replacement.Text = Nz(Me.业主姓名, "")
            .Execute , , , , , , , , , , 2


        End With
        
        doc.PrintPreview    '打印预览
        'doc.PrintOut        '直接打印
        
    Next
    docApp.Visible = True   '自动化完成后,显示WORD程序
End Sub
3#
 楼主| 发表于 2009-12-21 12:30:06 | 只看该作者
请各位来看看哟'.我等!!!
4#
 楼主| 发表于 2009-12-21 16:07:11 | 只看该作者
没有人来看哟
5#
发表于 2009-12-21 16:52:02 | 只看该作者
根据你的代码修改一下呀
6#
 楼主| 发表于 2009-12-21 17:09:26 | 只看该作者
我改过了,还是不行.请教下你哟
7#
 楼主| 发表于 2009-12-21 18:19:19 | 只看该作者
黄金时间.没有人.这里没人吗.伤心呀
8#
 楼主| 发表于 2009-12-21 19:28:09 | 只看该作者
这里的朋友都那里去了,天气冷哟,希望有个朋友来解决下,谢了
9#
发表于 2010-7-16 13:53:23 | 只看该作者
我也不会啊
10#
发表于 2013-1-25 11:09:28 | 只看该作者
搞不定
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 01:21 , Processed in 0.100363 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表