http://topic.csdn.net/u/20081129/09/e5c69173-9037-4c7e-98f9-9349e1997698.html我现在需要做一个导出页面数据行到EXCEL并要求加入一段宏命令: 
VB code
Sub Macro1()
'
' Macro1 Macro
' 宏由 user 录制,时间: 2008-11-28
''
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$5"
        .PrintTitleColumns = ""
    End With
    ActiveSheet.PageSetup.PrintArea = ""
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = ""
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.748031496062992)
        .RightMargin = Application.InchesToPoints(0.94488188976378)
        .TopMargin = Application.InchesToPoints(0.984251968503937)
        .BottomMargin = Application.InchesToPoints(0.984251968503937)
        .HeaderMargin = Application.InchesToPoints(0.511811023622047)
        .FooterMargin = Application.InchesToPoints(0.511811023622047)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .PrintQuality = 300
        .CenterHorizontally = True
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = 80
        .PrintErrors = xlPrintErrorsDisplayed
    End With
End Sub 这段宏命令的目的是导出文件在打印的时候控制表头(也就是前五行)不动,让打印出来的每一页上面都有表头。 导出功能已实现了,现在的问题是如何在导出的这个EXCEL中加上上面那个宏命令,请大家指教!

解决方案 »

  1.   

    我用的是C#  vs2005希望大家考虑一下一致性。VB6.0  跟  asp.net还是有差距的。
      

  2.   

    oExcelApp.run   "",   "",  
      

  3.   

    你可以用导出模板。将宏先写到Excel模板里,导出时使用模板添加数据。
      

  4.   

    我也遇到这个问题了。我自己写了一部分代码,但是
    LeftMargin = Application.InchesToPoints(0.748031496062992) 
            .RightMargin = Application.InchesToPoints(0.94488188976378) 
            .TopMargin = Application.InchesToPoints(0.984251968503937) 
            .BottomMargin = Application.InchesToPoints(0.984251968503937) 
            .HeaderMargin = Application.InchesToPoints(0.511811023622047) 
            .FooterMargin = Application.InchesToPoints(0.511811023622047)
    这段代码还没写出来。下面是宏的一部分,希望对你有用。

     ActiveSheet.PageSetup.PrintArea = "" 
        With ActiveSheet.PageSetup 
            .LeftHeader = "" 
            .CenterHeader = "" 
            .RightHeader = "" c#
     Microsoft.Office.Interop.Excel.Application vExcel =new Microsoft.Office.Interop.Excel.Application();
              vExcel.Workbooks.Add(true);
             vExcel.Visible = true;
              Worksheet vWorksheet = (Worksheet)vExcel.Worksheets[2];          Range vRange = vWorksheet.PageSetup;
              vWorksheet.PageSetup.PrintArea = "";
              vWorksheet.PageSetup.LeftHeader = "";