access的papersize命令_如何在报表中使用自定义尺寸的纸张

'当该报表使用的是自定义纸张时,则显示自定义纸张的大小,

'并询问是否更改纸张的大小并进行设置;

'当该报表使用的是标准纸张时,则询问是否使用自定义纸张,

'如果选择“是”,则要求输入纸张的大小并进行设置。

DimDevStringAsstr_DEVMODE

DimDMAstype_DEVMODE

DimstrDevModeExtraAsString

DimrptAsReport

DimintResponseAsInteger

'在设计视图下打开报表

DoCmd.OpenReportrptName,acDesign

Setrpt=Reports(rptName)

IfNotIsNull(rpt.PrtDevMode)Then

strDevModeExtra=rpt.PrtDevMode

'获取当前的DEVMODE结构

DevString.RGB=strDevModeExtra

LSetDM=DevString

IfDM.intPaperSize=256Then

'显示用户自定义纸张的尺寸

intResponse=MsgBox("当前的自定义纸张为(mm):"&_

DM.intPaperWidth/10&"(宽)X"&_

DM.intPaperLength/10&"(长)。你想改变吗?",_

vbYesNo+vbQuestion)

Else

'非自定义纸张

intResponse=MsgBox("报表没有使用自定义纸张。"&_

"你想使用自定义纸张吗?",vbYesNo+vbQuestion)

EndIf

IfintResponse=6Then

'用户要改变纸张设置,初始化DM的各个域

DM.lngFields=DM.lngFieldsOrDM.intPaperSizeOrDM.intPaperLength_

OrDM.intPaperWidth

'设置为自定义纸张

DM.intPaperSize=256

'提示输入长度和宽度

DM.intPaperLength=InputBox("请输入纸张的长度(mm):")*10

DM.intPaperWidth=InputBox("请输入纸张的宽度(mm):")*10

'更新属性值

LSetDevString=DM

Mid(strDevModeExtra,1,94)=DevString.RGB

rpt.PrtDevMode=strDevModeExtra

EndIf

EndIf

'关闭报表并保存

DoCmd.CloseacReport,rptName,acSaveYes

'预览报表

DoCmd.OpenReportrptName,acViewPreview

EndSub

相关链接:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值