Mon Sep 19, 2011 10:03 am
Dear Joe,
Sorry for this inconvenience caused by us.
When a new workbook object is created, during the initialization, 3 blank worksheets are added also. So you can remove it before saving.
eg.
- Code: Select all
class Program
{
public static Stream GetStream(String name)
{
Workbook workbook = new Workbook();
workbook.CreateEmptySheets(1);
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = name;
sheet.Range["A1"].Text = "Hello, I'm the sheet " + name;
Random random = new Random();
sheet.Range["A1"].Style.Font.Color = Color.FromArgb(random.Next(256), random.Next(256), random.Next(256));
sheet.Range["B1"].Text = "World";
int length = FontFamily.Families.Length;
sheet.Range["B1"].Style.Font.FontName = FontFamily.Families[random.Next(length)].Name;
MemoryStream buffer = new MemoryStream();
workbook.SaveToStream(buffer);
buffer.Position = 0;
return buffer;
}
static void Main(string[] args)
{
Workbook masterWorkbook = new Workbook();
//number of the blank sheet
int count = masterWorkbook.Worksheets.Count;
for(int i = 0; i < 5; i++)
{
String name = String.Format("Report{0}", i);
//load
Workbook workbook = new Workbook();
using (Stream results = GetStream(name))
{
workbook.LoadFromStream(results);
}
Worksheet sheet = workbook.Worksheets[0];
masterWorkbook.Worksheets.AddCopy(sheet);
}
//remove the blank sheets
for(int i = 0; i < count; i++)
{
masterWorkbook.Worksheets.Remove(0);
}
masterWorkbook.SaveToFile("Test.xls");
System.Diagnostics.Process.Start(masterWorkbook.FileName);
}
}
Please try our demo and if the styles still mess up, please send us your excel files saved from SSRS webservice.
Tina
Technical Support/Developer,
e-iceblue Support Team