我正在使用Microsoft.Office.Interop.Excel从C#创建Excel工作表,但我无法按照用户想要的方式获取页脚。
1)如何将页脚文本置于BOLD中? 2)如何将页码放在页脚中? (将@“Page @ [Page]”作为文本放入不起作用。)
可能?不可能?
答案 0 :(得分:10)
以下代码来自SpreadsheetGear for .NET帮助,并与Excel兼容:
* SpreadsheetGear的打印引擎将忽略任何文本或非字体代码后出现的字体代码。
答案 1 :(得分:7)
1)worksheet.PageSetup.LeftFooter = "&B Bold text &B"
2)worksheet.PageSetup.CenterFooter = "Page &P"
提示 - 打开Excel并通过UI设置所需的页脚,记录您所执行操作的宏。然后打开VBA编辑器。生成的VBA将为您提供有关如何通过API实现相同功能的线索。在自动化Excel时,可以在许多场景中使用此技巧。
答案 2 :(得分:1)
没有看到这提到的;类似于html代码,也可以关闭& B& I和类似代码。例如:
PageSetup.LeftHeader = "&B&IBOLDITALIC&I BOLD&B NORMAL";
给出:
BOLDITALIC BOLD 正常
答案 3 :(得分:0)
在元级别上,您可以通过录制宏并查看其功能来找到此类内容。例如,要进行此设置,我记录了宏并将其解决了:
Sub Macro1()
'
' Macro1 Macro
' Macro recorded 30/06/2009 by bloggsj
'
'
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = "&""Arial,Bold""Page &P of &N" '<== Et. Voila!
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.75)
.RightMargin = Application.InchesToPoints(0.75)
.TopMargin = Application.InchesToPoints(1)
.BottomMargin = Application.InchesToPoints(1)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.5)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
End Sub
录制的宏有很多垃圾但我们可以看到( Et.Voila )Excel如何做到这一点。从这一点可以弄清楚如何自己做。