Imprimir un gráfico

3 envíos / 0 nuevos
Último envío
Cron
Imagen de Cron
Offline
última acción: Hace 3 meses 1 semana
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 12725
Imprimir un gráfico

Hola

 

Tengo una hoja excel en la que llevo la cuenta de los resultados de la quiniela en la oficina, además de llevar el control de las apuestas, imprimir los boletos, etc.

Una de las cosas que hago es dibujar unas gráficas que dan una idea de la evolución de los resultados.

 

Antes hacía una impresión seleccionando la impresora "Adobe PDF", que era algo que había sacado del grabador de macros. Al final me salía una cosa como printer = "Adobe PDF in Ne01:" o algo parecido.

Me actualizaron el sistema, y ahora tengo W7, y parece que debieron actualizar en Microsoft la manera de llamar a las impresoras.

 

He cambiado el sistema por este código:

 

    nombre = ThisWorkbook.Name

    nombre = Left(nombre, Len(nombre) - 5)

    ActiveSheet.PageSetup.PrintArea = "B3:" & Range("B24").Value

     For i = 1 To ActiveSheet.VPageBreaks.Count

      ActiveSheet.VPageBreaks(i).Delete

     Next i

     For i = 1 To ActiveSheet.HPageBreaks.Count

      ActiveSheet.HPageBreaks(i).Delete

     Next i

    Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _

        nombre & ".pdf", Quality:=xlQualityStandard, _

        IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:= _

        False

 
 
Ahí selecciono el nombre del xlsx para usarlo en la grabación del archivo pdf. Luego selecciono el rango que me interesa, elimino los saltos de página, si los hay, e imprimo como pdf, utilizando la nueva opción de Office, que permite hacerlo en "Guardar como".
 
Hasta ahí, bien.
 
Pero luego tengo las gráficas, y ahí está el problema. Hago lo mismo:
 
 
    Sheets("Seguimiento").Activate
    ActiveSheet.ChartObjects("Aciertos").Select
    ActiveSheet.PageSetup.FitToPagesWide = 1             <-------No sé si es necesario
    ActiveSheet.PageSetup.FitToPagesTall = 1               <-------Id anterior
    Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        nombre & "1.pdf", Quality:=xlQualityStandard, _                                                  <--------------En esta línea me salta el error
        IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False
 
Error 438. El objeto no admite esta propiedad o método.
 
Entiendo que un gráfico no se puede imprimir así. Entonces, ¿cómo?
 
 
Gracias por adelantado.
 
 
Un saludo
pacomegia
Imagen de pacomegia
Offline
última acción: Hace 1 día 23 horas
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11015
Re: Imprimir un gráfico

parece que referirte al gráfico con Selection no le sienta muy bien.

Prueba con 

ActiveChart.ExportAsFixedFormat ...

 

------
Ya sé Excel, pero necesito más.

Cron
Imagen de Cron
Offline
última acción: Hace 3 meses 1 semana
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 12725
Re: Imprimir un gráfico

Muchísimas gracias. Funcionó perfectamente.