Avec Excel, il est souvent nécessaire de recopier et reformater ses données dans des cellules "temporaires" ou "de travail", et il arrive souvent que les utilisateurs soient réticents à faire cela, même s'il est possible de masquer les colonnes de ces données temporaires ou de travail. Ici, il semble que cela soit le cas.
Mais, le problème pourrait aussi venir d'ailleurs.
J'ai toujours vu que ActiveChart.SetSourceData contenir une liste de cellules, et non pas un tableau VBA. Je ne sais pas si c'est possible, et si vous avez déjà vu des exemples comme cela, ou si vous avez déjà réussi cela.
Donc, la solution serait de remplir des cellules avec les données de votre tableau VBA, et ensuite d'indiquer comme SourceData, un range de ces cellules.
Une autre solution serait de ne pas utiliser SetSourceData, mais d'utiliser SeriesCollection.