2010-02-03 11 views
5

Estoy intentando generar un gráfico de Excel desde C#. El gráfico se genera solo encuentra pero siempre aparece en el centro de la pantalla. ¿Cómo puedo establecer la posición de la tabla?¿Cómo establecemos la posición de un gráfico de Excel desde C#?

Gracias.

Mi código es el siguiente:

Microsoft.Office.Interop.Excel._Workbook ebook = (Microsoft.Office.Interop.Excel._Workbook)etablo.Workbooks.Add(true); 

Microsoft.Office.Interop.Excel._Worksheet esheet = (Microsoft.Office.Interop.Excel._Worksheet)ebook.ActiveSheet; 

_Chart grafik1 = (Chart)ebook.Charts.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing); 

/* Add Data From Cells here */ 
/* Then */ 
grafik1.Location(XlChartLocation.xlLocationAsObject, esheet.Name); 
+0

Podría publicar un ejemplo de super-simplificada de lo que está haciendo ahora para crear el gráfico? Un gráfico vacío estaría bien. Este sería un punto de partida útil, creo. –

+0

@Mark Byers Actualizado. Este código era de un ejemplo que he encontrado en alguna parte. No estoy seguro si es la forma correcta de hacerlo, aunque – slhsen

Respuesta

9

después de generar un gráfico, que puede manejar gráfico como un objeto de forma:

por ejemplo:

esheet.Shapes.Item("Chart 1").Top = 100; 
esheet.Shapes.Item("Chart 1").Left = 250; 


// or you can handle shape by index - indexes start from 1 so esheet.Shapes.Item(1).Top 

Creo, que Quisiera establecer la posición correcta de las celdas correspondientes, por ejemplo:

esheet.Shapes.Item("Chart 1").Top = (float)(double)esheet.get_Range("A5","A6").Top; 

así que ... espero que esto ayudará :)

Luboss

+0

Esto ayudó mucho, ¡gracias! – Novastorm

1

al agregar tabla puedes usar este código para manejar la situación está a la izquierda, arriba, anchura, altura. use this link

var chartObject = charts.Add(260, 30, 300, 300); 
Cuestiones relacionadas