Created
November 24, 2017 23:49
-
-
Save chenxizhang/e75b849b1d2ef6eab5d742a9c976527d to your computer and use it in GitHub Desktop.
Report generator VSTO Csharp Sample
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Collections.Generic; | |
using System.Linq; | |
using System.Text; | |
using Microsoft.Office.Tools.Ribbon; | |
using Microsoft.Office.Interop.Excel; | |
namespace ExcelAddIn3 | |
{ | |
public partial class Ribbon1 | |
{ | |
private void Ribbon1_Load(object sender, RibbonUIEventArgs e) | |
{ | |
} | |
private void button1_Click(object sender, RibbonControlEventArgs e) | |
{ | |
Worksheet sh = Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets.Add(); | |
sh.Activate(); | |
Range rng = sh.Cells[1, 1]; | |
rng.Value = "Quarterly Sales Report"; | |
rng.Font.Name = "Century"; | |
rng.Font.Size = 26; | |
rng.Resize[1, 5].Merge(); | |
rng.HorizontalAlignment = XlHAlign.xlHAlignCenter; | |
Range headerRow = rng.Offset[1, 0].Resize[1, 5]; | |
headerRow.Value = new[] { "Product", "Qtr1", "Qtr2", "Qtr3", "Qtr4" }; | |
headerRow.Font.Bold = true; | |
Range dataRng = rng.Offset[2, 0].Resize[6, 5]; | |
dataRng.Value = new object [,]{ | |
{"Frames", 5000, 7000, 6544, 4377}, | |
{ "Saddles", 400, 323, 276, 651 }, | |
{ "Brake levers", 12000, 8766, 8456, 9812 }, | |
{ "Chains", 1550, 1088, 692, 853 }, | |
{ "Mirrors", 225, 600, 923, 544 }, | |
{ "Spokes", 6005, 7634, 4589, 8765 } | |
}; | |
dataRng.Columns.AutoFit(); | |
sh.Range["A1"].ColumnWidth = 20; | |
sh.Range["B1:E8"].ColumnWidth = 15; | |
sh.Range["B1:E8"].HorizontalAlignment = XlHAlign.xlHAlignCenter; | |
ChartObject co = sh.ChartObjects().Add(0, sh.Range["A1:A8"].Height + 5, sh.Range["A1:E1"].Width, 200); | |
co.Chart.ChartWizard(Source: sh.Range["A2:E8"], Title: "Quarterly sales chart", Gallery: XlChartType.xlColumnClustered); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment