尝试设置多个PageSetup页脚值时出现Excel VBA错误1004

时间:2017-12-14 02:04:12

标签: excel vba excel-vba

我正在尝试使用Excel-VBA为我的工作表设置PageSetup信息,但它给了我以下错误:

  

运行时错误'1004':

     

无法设置PageSetup类的LeftFooter属性

相关的示例代码如下:

Set WS = ActiveWorkbook.ActiveSheet

WS.DisplayPageBreaks = False
With WS.PageSetup
    .PrintArea = "$A$1:$L$32"
    .Orientation = xlLandscape
    .CenterHeader = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" & Chr(10) & _ 
                    "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    .CenterFooter = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" & Chr(10) & _ 
                    "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    .RightFooter = "XXXXXXXXXXXXXXXXXXXXXXX" & Chr(10) & _ 
                   "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    .LeftFooter = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" & Chr(10) & _ 
                  "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" & Chr(10) & _ 
                  "XXXXXXXXXXXXXXXXXXXXXXXXXX"
    .CenterHorizontally = True
    .Zoom = False
End With

奇怪的是,如果我注释掉三个.xxxFooter行中的任何一行,代码就可以了。如果我将它们重新排列成任何可能的不同顺序,它们都会起作用,但最后一个会抛出相同的1004错误但是对于新的.xxxFooter。

此用户似乎有一个高度相关的问题,但从未解决过:Error when setting Worksheet.PageSetup.XxxFooter。作为对问题的评论,是的,我确实安装了打印机。

修改

另一个发现:如果我删除了一些字符,那么它将再次起作用。手动添加其他字符最终会导致弹出此错误框:

  

您输入的文字字符串太长。减少使用的字符数。

我可以通过缩小页脚中的很多内容来暂时解决这个问题,但有没有其他方法可以解决这个问题,任何人都可以解释为什么页脚中存在字符限制?这在Excel 2016中似乎很神秘......

0 个答案:

没有答案