J'ai un script qui génère un certain nombre de mesures de performances pour un ordinateur dans un fichier .csv. L'Excel effectue une vérification des statistiques de base pour l'écart type, etc.
Je me rends compte que vous pouvez importer des fichiers .csv dans Excel, mais ce que j'essaie de faire est de lire ces données dynamiquement dans mon modèle Excel sans avoir à réimporter et à re-modéliser à chaque fois.
Existe-t-il un moyen pour une cellule / table de référencer un .csv externe sans réimporter à chaque fois?
Réponses:
Le moyen le plus simple consiste à importer les données dans Access ou SQL Express, puis à utiliser les fonctionnalités et fonctions de connexion de données dans Excel. Après la configuration initiale, tout ce que vous auriez à faire est de cliquer sur Actualiser tout et il extraira les données et recalculera les valeurs.
Vous pouvez importer directement le CSV avec la fonction de connexion de données, mais il va vouloir extraire les données et les ajouter à une feuille de calcul. Cela fonctionnera, tant que vous l'importez dans une feuille de calcul secondaire et que vous laissez vos formules et calculs sur une autre feuille. Lorsque vous cliquez sur Actualiser à l'aide de cette méthode, il va demander le nom du fichier, puis le réimporter en utilisant les mêmes paramètres que ceux utilisés à l'origine. Cette méthode est également généralement plus lente ou inutilisable avec de grands ensembles de données.
la source
les fenêtres
Vous pouvez également utiliser Power Query qui est un moyen un peu plus flexible pour obtenir le même résultat que dans la réponse de @ andy-lynch .
Voir ci-dessous un gif animé pour un aperçu:
MacOS
Power Query n'est pas disponible pour MacOS; la boîte de dialogue d'ouverture de fichier Excel "From Text" sous MacOS n'accepte pas non plus une URL (au moins dans la version 15.33).
Pour créer une telle connexion, il faudrait d'abord créer un fichier de requête Web (.iqy), comme expliqué dans ce guide , puis l'importer avec la commande de menu "Données -> Obtenir des données externes -> Exécuter la requête enregistrée".
la source
La question est "Comment référencer des données dans un fichier .csv?
Ma façon serait de découper le fichier .csv et d'utiliser une macro contenant VBA et ADO qui reçoit les données et les place directement dans une feuille de calcul dans Excel. Toute base de données compatible ODBC peut être votre source.
Excel 2010 contient des données >> Obtenir des données externes - à partir de diverses sources de données. Cependant, je préfère écrire mon propre code car j'ai un contrôle absolu et je peux formater les résultats dans la macro. L'actualisation est au clic d'un bouton et vous pouvez tout faire avec.
Je pourrais vous faire savoir quelques détails si vous me dites de quelle base de données proviennent les mesures.
PS Regardez la liste des pilotes dans Data >> Get External Data >> Existing Connections >> Browse for More >> New Source >> Other Advanced >> Next qui vous mène à la liste Data Link Properties. Vous devez ensuite savoir quelle base de données source et quel pilote utiliser. Vous pouvez m'envoyer un email à cliffbeacham at hotmail avec plus de détails.
la source
Un moyen plus simple (grâce à cet article ) consiste à simplement importer les données comme vous le feriez pour un fichier texte que vous avez déjà téléchargé (c'est-à-dire
Data > Import Text File
), mais au lieu de saisir un nom de fichier, collez plutôt l'URL du fichier CSV.la source
importer le fichier csv directement via
File->From Text
vérifier les propriétés de connexion dansData->Connections
voir Importer un fichier texte en s'y connectant
la source
Avec VBS, la macro ou le script ressemblerait à (Excel2010 et versions ultérieures):
Cette macro a en fait été enregistrée par l'enregistreur de macros Excel 2013. Vous pouvez créer un bouton qui déclenche cette macro.
la source