2011-06-23 8 views
7

Estoy tratando de editar los datos de Excel incrustado en silencio en PowerPoint 2010. Por desgracia, cuando se utiliza:Editar datos de Excel incrustado en silencio, en PowerPoint 2010

gChartData.Activate 

Se abre el documento de Excel durante la presentación. ¿Hay alguna manera de activar ChartData sin abrir Excel?

Código completo:

Private Sub CommandButton1_Click() 

Dim myChart As Chart 
Dim gChartData As ChartData 
Dim gWorkBook As Excel.Workbook 
Dim gWorkSheet As Excel.Worksheet 

Set myChart = ActivePresentation.Slides(1).Shapes(1).Chart 
Set gChartData = myChart.ChartData 

gChartData.Activate 

Set gWorkBook = gChartData.Workbook 

Set gWorkSheet = gWorkBook.Worksheets(1) 

gWorkSheet.Range("B2").Value = 1 

Set gWorkSheet = Nothing 
Set gWorkBook = Nothing 
Set gChartData = Nothing 
Set myChart = Nothing 


End Sub 

Gracias de antemano.

+0

¿Por qué necesita gChartData.Activate? – DontFretBrett

Respuesta

2

Steven,

Mientras que la línea Activate es necesario tener acceso al libro de trabajo subyacente añadiendo un simple gWorkBook.Close a su código (antes de colocarlo en Nothing) cerrará Excel nuevo en lugar de dejarlo en la parte superior como su actual el código lo hace.

Private Sub CommandButton1_Click() 

    Dim myChart As Chart 
    Dim myChartData As ChartData 
    Dim gWorkBook As Excel.Workbook 
    Dim gWorkSheet As Excel.Worksheet 

    Set myChart = ActivePresentation.Slides(1).Shapes(1).Chart 
    Set myChartData = myChart.ChartData 
    myChartData.Activate 

    Set gWorkBook = myChart.ChartData.Workbook 
    Set gWorkSheet = gWorkBook.Worksheets(1) 
    gWorkSheet.Range("B2").Value = 1 

    gWorkBook.Close 
    Set gWorkSheet = Nothing 
    Set gWorkBook = Nothing 
    Set gChartData = Nothing 
    Set myChart = Nothing 
End Sub 
+3

* Si bien la línea Activar es necesaria para acceder al Libro de trabajo subyacente * ... He estado lidiando con este estúpido y tonto requisito durante la mayor parte de los últimos 2 años, todavía no puedo creer que lo necesiten ... –

+0

@davidzemens estuvo de acuerdo. La lógica de PowerPoint es a veces ... Un oxímoron. – brettdj

Cuestiones relacionadas