我是这么写的:OpenFileDialog openFileDlg = new OpenFileDialog();
            openFileDlg.InitialDirectory = "c:";
            openFileDlg.DefaultExt = "xls";
            openFileDlg.Filter = "Excel文件 (*.xls;*.xlsx)|*.xls*";
            if (openFileDlg.ShowDialog() == DialogResult.OK)
            {
                Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
                Microsoft.Office.Interop.Excel.Workbooks wbs = app.Workbooks;
                Microsoft.Office.Interop.Excel.Workbook wb = wbs.Add(openFileDlg.FileName); ;
                Microsoft.Office.Interop.Excel.Worksheets wss;
                Microsoft.Office.Interop.Excel.Worksheet ws;                
                //获取Excel中的工作表名
                string[] tnames=this.GetExcelSheetNames(openFileDlg.FileName);
                if (tnames != null)
                {
                    foreach (string tname in tnames)
                    {
                        try
                        {
                            ((Microsoft.Office.Interop.Excel.Worksheet)wb.Sheets[tname.TrimEnd("$".ToCharArray())]).PageSetup.RightHeader = @"&""Arial""&9这是页眉文字";                            
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
                    }
                }
                //app.Save(openFileDlg.FileName); 
                app.ActiveWorkbook.Save();
                app.Quit();
                app = null;
                GC.Collect();
            }但是没有效果