2017-11-21 31 views
1

これは文字列をエスケープするという単純な問題のようですが、 Excelのフッターでフィールドを使用する例のドキュメントOpenXMLを使用してスプレッドシートを生成し、カスタムフッターで&[ページ]の&[ページ]を取得しようとしています

問題のプロパティは次のとおりです。生成し、スプレッドシートを開くと、ファイルにナビゲートした後

using (ExcelPackage pckExport = new ExcelPackage()) 
      { 
       ExcelWorksheet xlSheet = pckExport.Workbook.Worksheets.Add(SystemEnum.GetEnumDescription(typeof(SystemEnum.Reports), SystemEnum.Reports.GroomingCalendarReport.GetHashCode())); 
       try 
       { 
        int miRow = 1; 
        string pageHeader = "Calendar Report"; 
        xlSheet.Cells.Style.Font.Size = 9; 
        xlSheet.Cells.Style.Font.Name = "Times New Roman"; 
        DateTime reportDate = Convert.ToDateTime(rptDate); 
        ////set the report header 
        xlSheet.HeaderFooter.OddHeader.CenteredText = "&\"Times New Roman,Bold\"&12" + "\n" + pageHeader + "\n" + " &11for&12 " + reportDate.Date.DayOfWeek.ToString() + " , " + reportDate + 
                    "\n" + Location; 
        xlSheet.HeaderFooter.OddFooter.LeftAlignedText = "&[Page] of &[Pages]"; 
        xlSheet.HeaderFooter.OddFooter.RightAlignedText = DateTime.Now.ToShortDateString(); 

ここ
xlSheet.HeaderFooter.OddFooter.LeftAlignedText = "&[Page] of &[Pages]"; 

は、追加のコンテキストのためのワークシートを生成するコードの大きい方の抜粋です\ Printメニューでは、フッターが正しくないことがわかります:

ここにフッターの画面グラブがあります: Page of Pages

私はページ設定に移動し、ダイアログボックスフッターカスタム]を選択した場合は、& [ページ]の[ページ] &として正しくフォーマットされたフッター情報を表示し、私は大丈夫をクリックして、許可すればダイアログがショーを印刷プレビューを閉じますフッターは正しく。ここで

は、カスタムフッター]ダイアログボックスの[画面のグラブです: Custom Footer Dialog Box

私は明示的な文字列を使用してみましたし、&を使用している[ページ]しかし、それらのページのすべての戻りページ]]プレビュー上と正確にカスタムフッターボックスで送信されたテキスト。

私はこれに関する助けを探して私のアイデアを使い果たしました。

誰でも手助けできますか?

おかげで、あなたはExcelHeaderFooterオブジェクトを見れば

答えて

0

はあなたが欲しいものを達成できるように、非常に参考const年代の全体の束が表示されます。

ここ
var wb = pck.Workbook; 
var ws = wb.Worksheets.Add("Sheet1"); 
ws.Cells[1, 1].Value = "Test"; 

var footer = $"Page {ExcelHeaderFooter.PageNumber} of {ExcelHeaderFooter.NumberOfPages}"; 
ws.HeaderFooter.EvenFooter.CenteredText = footer; 
ws.HeaderFooter.OddFooter.CenteredText = footer; 

としてリストされているものですバージョン4.1の:

#region Static Properties 
/// <summary> 
/// The code for "current page #" 
/// </summary> 
public const string PageNumber = @"&P"; 
/// <summary> 
/// The code for "total pages" 
/// </summary> 
public const string NumberOfPages = @"&N"; 
/// <summary> 
/// The code for "text font color" 
/// RGB Color is specified as RRGGBB 
/// Theme Color is specified as TTSNN where TT is the theme color Id, S is either "+" or "-" of the tint/shade value, NN is the tint/shade value. 
/// </summary> 
public const string FontColor = @"&K"; 
/// <summary> 
/// The code for "sheet tab name" 
/// </summary> 
public const string SheetName = @"&A"; 
/// <summary> 
/// The code for "this workbook's file path" 
/// </summary> 
public const string FilePath = @"&Z"; 
/// <summary> 
/// The code for "this workbook's file name" 
/// </summary> 
public const string FileName = @"&F"; 
/// <summary> 
/// The code for "date" 
/// </summary> 
public const string CurrentDate = @"&D"; 
/// <summary> 
/// The code for "time" 
/// </summary> 
public const string CurrentTime = @"&T"; 
/// <summary> 
/// The code for "picture as background" 
/// </summary> 
public const string Image = @"&G"; 
/// <summary> 
/// The code for "outline style" 
/// </summary> 
public const string OutlineStyle = @"&O"; 
/// <summary> 
/// The code for "shadow style" 
/// </summary> 
public const string ShadowStyle = @"&H"; 
#endregion 
+0

アーニー、あなたのアドバイスがあったし、正しく動作しているシートがあります。ドキュメントへのリンクありがとうございます。なぜ私はそれが昨日見つけられなかったのか分かりません。私はあまりにもイライラしていました。とりあえずありがとう。 – John

関連する問題