SSIS 2008, Excel 2007 mise en forme des colonnes excel correctement (l'Exportation, pas d'importation)
Je suis en cours d'exécution dans certains problèmes de mise en forme avec l'exportation de données vers une feuille de calcul excel 2007.
J'ai un fichier de modèle qui a les colonnes formaté correctement, mais lorsque les données sont exportées il n'a pas obtenir les bons formats (de change, de date courte, etc.)
Je suis en train de penser que j'ai 2 options
Excel exécution automatique d'une macro. (déteste cette idée)
Format de données avant qu'il arrive à excel et de le rendre chaîne de données uniquement. (Je n'aime pas que l'idée soit que vous allez obtenir ces irritants de conversion de données flèches en regard de chaque cellule)
J'ai utilisé le IMEX=1 astuce pour contourner l'importation de données de questions avant, mais est-il une astuce particulière pour l'exportation?
merci,
- Pourriez-vous fournir un exemple de la façon dont une date de monnaie ou est le problème? Quel est le format de DB et comment est-il formaté dans Excel?
- Aider moi plis, j'ai besoin de faire la même chose!! vous pouvez le faire fonctionner?
Vous devez vous connecter pour publier un commentaire.
J'ai passé du temps à essayer de figurure cela.
Ce que vous devez faire est d'avoir caché ligne de données dans la feuille de calcul vous exportez.
SSIS placer les valeurs dans la feuille de calcul, et d'assumer le type est celui de la ligne juste au-dessus. De sorte que la ligne de données doit être la dernière ligne de la feuille de calcul et les données dans chaque colonne doit être du type que vous voulez qu'il soit.
On pourrait penser, il y a une meilleure façon de le faire. Il n'y en a pas. Désolé 🙂
Donc, après beaucoup de mise en forme et des grincements de dents, je suis descendu à la solution finale. Il semble que vous avez encore besoin de le caché ligne en haut pour excel à utiliser. Qui détermine si le format des données numériques ou chaîne. Si vous voulez faire plus de mise en forme, alors vous devez ajouter dans une tâche de script pour votre package SSIS. J'ai ajouté les lignes suivantes dans un .net tâche de script à la fin de mon traitement et il fixe haut droit.
S'il vous plaît ne pas vomir sur le DailyWTF code de qualité 😉
La solution est tellement simple qu'il vont la faire hurler. Suffit d'utiliser la commande SQL CREATE TABLE à partir d'une tâche SQL boîte de SSIS. Définir le type de connexion à EXCEL. Voici les étapes :
Nous allons utiliser "TEST" comme le nom de l'onglet sur le spreadhseet.
1.) Copiez le fichier de modèle dans un nouveau fichier.
2.) Créer une tâche SQL, définissez le type de connexion à Excel et utiliser la chaîne de connexion que vous venez de créer un fichier Excel. Utilisez le code ci-dessous un exemple :
DROP TABLE
TEST
ALLER
3.) Créer une autre tâche SQL (en utilisant les mêmes paramètres) et utiliser le code suivant :
CREATE TABLE
TEST
(
Column1
Entier,Column2
DATETIME,Column3
De type NVARCHAR(50),Column4
De l'ARGENT)
ALLER
Vous pouvez maintenant commencer à écrire des données. Un couple de choses que j'ai rencontré est la, j'ai dû utiliser le caractère ` au lieu de ' pour une virgule. Aussi, j'ai essayé d'utiliser la CHUTE de la & CRÉER des commandes dans une tâche SQL mais il ne fonctionne pas pour moi, donc j'ai utilisé deux.