2013-02-27 6 views
2

Я использовал следующее заявление в Excel Dashboard:Excel-VBA Совместимость Выпуск

HeaderTableSheet.ChartObjects("Header_BreakEvenAnalysis").Copy 

Он отлично работает каждый раз на Excel 2007, но дает ошибку «приложение или объект, определенные ошибки» в Excel -2010 (Это тоже не каждый раз)

Я тоже не могу понять причину.

Любое решение/обход для того же, пожалуйста?

+1

Вы заметили, что 2007 был troulbe в период между 2003 и 2010 годами .. Чтобы сказать, что в 2007 году объектная модель изменилась и натолкнулась, что она пропустила совсем некоторые (особенно в классе объектов Charting). Так что здесь используется макрос? – bonCodigo

+0

@bonCodigo: Да, я использую макрос здесь. Любое обходное решение, которое вы можете предложить? – Tejas

ответ

0

Вы можете попробовать это?

Option Explicit 

Sub yourSUB() 
Dim myChart As ChartObject 

'--- other codes 

    For Each myChart In Sheets("SheetName").ChartObjects 
     If myChart.Name = "Header_BreakEvenAnalysis" Then 
     myChart.Copy 
     End If 
    Next myChart 

'---other codes 
'---release the memory and clean up 
Set myChart = Nothing 
End Sub 
+0

Спасибо! Я попробую это сразу после достижения дома. – Tejas

+0

Благодарим вас за попытку, но это не сработало. Я опубликовал решение, которое я нашел в качестве ответа здесь. – Tejas

1

лист должен быть активирован перед копированием диаграммы (Это необходимо в Excel-2010 только)

Так следующий код работал:

HeaderTableSheet.Activate 
HeaderTableSheet.ChartObjects("Header_BreakEvenAnalysis").Copy 
Смежные вопросы