Visual Basic.NET - Exportar Grafica excel a Imagen desde VBNET

 
Vista:

Exportar Grafica excel a Imagen desde VBNET

Publicado por Rober (7 intervenciones) el 01/04/2008 10:56:52
Hola quisiera exportar las graificas que tengo en una hoja excel como imagenes en una ruta de terminada (chart.export). Pero no lo Consigo... esto es lo que hago:

Dim AppExcel As Excel.Application
AppExcel = New Excel.Application
Dim ExcelP As Excel.Workbook
Dim hojaP As Excel.Worksheet
Dim FicheroExcelP As String
Dim NombreHojaP As String
FicheroExcelP = "c:mi ruta"
NombreHojaP = "Hoja1"
ExcelP= CType(AppExcel.Workbooks.Open(FicheroExcelP), Excel.Workbook)
hojaP= CType(ExcelP.Sheets(NombreHojaP), Excel.Worksheet)

'Selecciono las gráficas, las cuento y las paso a Imagen.
Dim grafico As Excel.ChartObject
Dim i As Integer
Dim Ngraf As Integer = 0
Dim nombrearchivo As String

Ngraf = 0 ' inicializo para volver a contar si selecciono generar y pegar
For Each grafico In hojaPVgon.ChartObjects
Ngraf = Ngraf + 1
nombrearchivo = "C:mi ruta destinografica" & Ngraf & ".png"
'grafico.Chart.Export(nombrearchivo, "png") ' exporto a png

grafico.Activate()
grafico.Chart.ChartArea.Select()
grafico.Chart.Export(nombrearchivo, "png") ' exporto a png
Next
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Exportar Grafica excel a Imagen desde VBNET

Publicado por Rober (7 intervenciones) el 01/04/2008 11:11:23
Perdón, repito el post, se envio antes de que acabara de escribir. Hola quisiera exportar las graficas que tengo en una hoja excel como imagenes en una ruta determinada (chart.export) desde VB NET. Pero no lo Consigo... esto es lo que hago, por si a alguien le puede servir para algo:

Dim AppExcel As Excel.Application
AppExcel = New Excel.Application
Dim ExcelP As Excel.Workbook
Dim hojaP As Excel.Worksheet
Dim FicheroExcelP As String
Dim NombreHojaP As String
FicheroExcelP = "c:mi ruta"
NombreHojaP = "Hoja1"
ExcelP= CType(AppExcel.Workbooks.Open(FicheroExcelP), Excel.Workbook)
hojaP= CType(ExcelP.Sheets(NombreHojaP), Excel.Worksheet)

'Selecciono las gráficas, las cuento y las paso a Imagen.
Dim grafico As Excel.ChartObject
Dim Ngraf As Integer = 0
Dim nombrearchivo As String

For Each grafico In hojaP.ChartObjects
Ngraf = Ngraf + 1
nombrearchivo = "C:mi ruta destinograficagrafica" & Ngraf & ".png"

grafico.Activate()
grafico.Chart.ChartArea.Select()
grafico.Chart.Export(nombrearchivo, "png") ' exporto a imagen png AQUI FALLA
Next

El mensaje que me da es algo como:

No se controló ComException Excepción de HRESULT: 0x800A03EC
"Este codigo hace referencia a otra funcion. Cuando haya terminado dicha función, esta será la siguiente instrución que se ejecute"

Alguien tiene alguna idea?.
Muchas gracias adelantadas.
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Exportar Grafica excel a Imagen desde VBNET

Publicado por Federico Vidal (2 intervenciones) el 02/04/2008 17:28:59
Do.event()
en teoria esto espera hasta que todos los mensajes(eventos) se lean. Podria ser que se ejecute el hilo y no le de tiempo a terminar su proceso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Exportar Grafica excel a Imagen desde VBNET

Publicado por kike (1 intervención) el 24/09/2010 02:38:33
esto graba una imagen guradad en una base de datos access a un fichero espero q te sirva
------------------------------------------------------------------------------------

Private Sub btnGuardarFicheiro_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardarFicheiro.Click
'graba foto de la base de datos a un archivo
Dim result As DialogResult
Dim PathSplit() As String
'Dim tempPathSplit As String
Dim i As Int32 = 0

SD.InitialDirectory = Path
SD.FileName = Replace(Trim(TXT_Nombre.Text), " ", "_") & ".jpg"
SD.Filter = "Jpeg Files(*.jpg)|*.jpg|Gif Files(*.gif)|*.gif|Bmp Files(*.bmp)|*.bmp|All Files(*.*)|*.*"

result = SD.ShowDialog
If result = System.Windows.Forms.DialogResult.OK Then
picImagem.Image.Save(SD.FileName)
PathSplit = SD.FileName.Split("\")
Path = String.Join("\", PathSplit, 0, UBound(PathSplit))

'graba a la carpeta actual seleccionada del cuadro de dialogo q esta en el archivo ini
FileOpen(1, System.Windows.Forms.Application.StartupPath & "\config.ini", OpenMode.Output)
PrintLine(1, Path)
FileClose(1)
End If
End Sub
#End Region
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar