2010-10-12 5 views

Répondre

0

J'ai finalement trouvé une réponse. J'ai donc eu besoin de générer des rapports Excel avec beaucoup de tableaux croisés dynamiques liés à une table principale. Mais utiliser une table était une mauvaise idée. Au lieu de cela, les tableaux croisés dynamiques doivent être liés à une plage nommée.

La dernière chose à savoir est que le message d'erreur "Références non valides" apparaît si la plage nommée n'utilise pas la fonction OFFSET.

Ma formule de plage nommée est:

=OFFSET(Sheet!$A$1, 0, 0, COUNTA(Sheet!$A:$A), NUMBER_OF_COLUMNS) 

Où feuille est le nom de la feuille de calcul et NUMBER_OF_COLUMNS est le nombre de colonnes des données.

C'est tout. Je peux maintenant générer un rapport Excel sans aucune ligne de code, en utilisant uniquement SSIS 2005.

1

Je n'utiliserais pas SSIS pour cela, vous pouvez avoir Excel2007 as linked server, mettre des données dans Excel par TSQL régulier, ou traiter des données par Excel VBA en obtenant des données directement à partir de SQL Server. En bon sens pratique, je would not ever use SSIS for anything

Eh bien, il n'y a pas beaucoup d'informations comment vous le faites, mais vous devez spécifier en quelque sorte que la première ligne ne doit pas être utilisé comme contenant les noms d'en-tête (HDR = NO), quelque chose comme,

  • insert dans OPENROWSET ('Microsoft.Jet.OLEDB.4.0',
    'Excel 8.0; Database = D: \ testing.xls;; HDR = NO',
    « SELECT * FROM [Sheet1 $] ')
+0

J'ai vraiment besoin d'utiliser SSIS. J'ai trouvé un moyen d'insérer des données dans un tableau Excel avec C#, en utilisant le SDK OpenXML. Mais je suis toujours à la recherche d'un moyen de le faire directement dans SSIS. Je serais surpris que ce ne soit pas possible. Malheureusement, [NomFeuille]. [NomTableau] ne fonctionne pas :(Je posterai ma solution finale, à moins que quelqu'un ne me fournisse une solution –

+0

Je me résigne à coder avec ExtremeML! –

+0

Oui, je n'ai pas travaillé avec Excel pour tout à fait un temps mais je me souviens qu'en 2007 il est possible de travailler directement avec le schéma XML des données de feuilles sous-jacentes (ce qui n'est pas disponible en 2003) –

Questions connexes