Excel pour Mac intègre Power Query technologie (également appelée Get & Transform) pour offrir une plus grande capacité lors de l’importation, de l’actualisation et de l’authentification des sources de données, la gestion des sources de données Power Query, l’effacement des informations d’identification, la modification de l’emplacement des sources de données basées sur des fichiers et la mise en forme des données dans une table qui répond à vos besoins. Vous pouvez également créer une requête Power Query à l’aide de VBA.
Pour plus d’informations sur l’utilisation de connecteurs hérités pour importer des données, consultez Importer des données dans Excel pour Mac (hérité).
Important : Cette fonctionnalité est uniquement disponible pour les abonnés Microsoft 365 qui ont choisi de participer au programme Office Insider. Vous devez exécuter la version 16.61 (build 22041701) ou ultérieure à Excel pour Mac. Si vous êtes abonné à Microsoft 365, vérifiez que vous disposez de la dernière version d’Office
Dans Excel pour Mac, vous pouvez modéliser et transformer vos données à l’aide de la Éditeur de requête.
Procédure
-
Sélectionnez Données > Obtenir des données (Power Query).
-
Pour ouvrir le Éditeur de requête, sélectionnez Lancer Éditeur Power Query.
Conseil : Vous pouvez également accéder au Éditeur de requête en sélectionnant Obtenir des données (Power Query), en choisissant une source de données, puis en cliquant sur Suivant.
-
Mettez en forme et transformez vos données à l’aide de la Éditeur de requête comme vous le feriez dans Excel pour Windows.
Pour plus d’informations, consultez Power Query pour obtenir de l’aide sur Excel.
-
Lorsque vous avez terminé, sélectionnez Accueil > Fermer & charger.
Résultat
Les données nouvellement importées apparaissent dans une nouvelle feuille.
Sources de données prises en charge
Les sources de données prises en charge sont les suivantes :
-
Fichiers texte, CSV, XLSX, XML et JSON.
-
SharePoint, listes SharePoint, dossiers SharePoint et OData.
-
Tables et plages locales.
-
Microsoft SQL Server.
-
Sélectionnez Données > Obtenir des données.
-
Dans la boîte de dialogue Choisir une source de données – Obtenir des données (Power Query), sélectionnez classeur Excel ou Texte/CSV.
-
Sélectionnez Parcourir pour rechercher le fichier que vous souhaitez connecter en tant que source de données.
-
Dans la boîte de dialogue Sélecteur de fichiers, sélectionnez le fichier, passez en revue les détails du fichier, puis cliquez sur Suivant.
-
S’il existe plusieurs jeux de données, à gauche, sélectionnez les données que vous souhaitez importer, puis à droite, confirmez la sélection dans la préversion des données.
-
En bas à droite, sélectionnez Charger.
Résultat
Les données importées apparaissent dans une nouvelle feuille.
Vous pouvez actualiser les sources de données suivantes : fichiers SharePoint, listes SharePoint, dossiers SharePoint, OData, fichiers texte/CSV, classeurs Excel (.xlsx), fichiers XML et JSON, tables et plages locales, ainsi qu’une base de données Microsoft SQL Server.
Actualiser la première fois
La première fois que vous tentez d’actualiser des sources de données basées sur des fichiers dans vos requêtes de classeur, vous devrez peut-être mettre à jour le chemin d’accès au fichier.
-
Sélectionnez Données, flèche en regard d’Obtenir des données, puis Paramètres de la source de données. La boîte de dialogue Paramètres de la source de données s’affiche.
-
Sélectionnez une connexion, puis sélectionnez Modifier le chemin d’accès au fichier.
-
Dans la boîte de dialogue Chemin d’accès au fichier , sélectionnez un nouvel emplacement, puis sélectionnez Obtenir des données.
-
Sélectionnez Fermer.
Actualiser les heures suivantes
Pour actualiser :
-
Toutes les sources de données du classeur, sélectionnez Données > Actualiser tout.
-
Une source de données spécifique, cliquez avec le bouton droit sur une table de requête sur une feuille, puis sélectionnez Actualiser.
-
Un tableau croisé dynamique, sélectionnez une cellule dans le tableau croisé dynamique, puis sélectionnez Analyser le tableau croisé dynamique > Actualiser les données.
La première fois que vous accédez à SharePoint, SQL Server, OData ou à d’autres sources de données qui nécessitent une autorisation, vous devez fournir les informations d’identification appropriées. Vous pouvez également effacer les informations d’identification pour en entrer de nouvelles.
Entrer les informations d’identification
Lorsque vous actualisez une requête pour la première fois, vous pouvez être invité à vous connecter. Sélectionnez la méthode d’authentification et spécifiez les informations d’identification de connexion pour vous connecter à la source de données et poursuivre l’actualisation.
Si la connexion est requise, la boîte de dialogue Entrer les informations d’identification s’affiche.
Par exemple :
-
Informations d’identification SharePoint :
-
SQL Server informations d’identification :
Effacer les informations d’identification
-
Sélectionnez Données > Obtenir des données > paramètres de source de données.
-
Dans la boîte de dialogue Paramètre de la source de données, sélectionnez la connexion souhaitée.
-
En bas, sélectionnez Clear Permissions.
-
Vérifiez que c’est ce que vous voulez faire, puis sélectionnez Supprimer.
Bien que la création dans le Éditeur Power Query ne soit pas disponible dans Excel pour Mac, VBA prend en charge Power Query création. Le transfert d’un module de code VBA dans un fichier d’Excel pour Windows vers Excel pour Mac est un processus en deux étapes. Un exemple de programme vous est fourni à la fin de cette section.
Étape 1 : Excel pour Windows
-
Sur Excel Windows, développez des requêtes à l’aide de VBA. Le code VBA qui utilise les entités suivantes dans le modèle objet d’Excel fonctionne également dans Excel pour Mac : objet Queries, objet WorkbookQuery, workbook.Queries, propriété.Pour plus d’informations, consultez la référence VBA Excel.
-
Dans Excel, assurez-vous que Visual Basic Editor est ouvert en appuyant sur Alt+F11.
-
Cliquez avec le bouton droit sur le module, puis sélectionnez Exporter le fichier. La boîte de dialogue Exporter s’affiche.
-
Entrez un nom de fichier, vérifiez que l’extension de fichier est .bas, puis sélectionnez Enregistrer.
-
Chargez le fichier VBA sur un service en ligne pour rendre le fichier accessible à partir du Mac.
Vous pouvez utiliser Microsoft OneDrive. Pour plus d’informations, consultez Synchroniser les fichiers avec OneDrive sur Mac OS X.
Étape 2 : Excel pour Mac
-
Téléchargez le fichier VBA dans un fichier local, le fichier VBA que vous avez enregistré à l’étape 1 : Excel pour Windows et chargé dans un service en ligne.
-
Dans Excel pour Mac, sélectionnez Outils > Macro > Visual Basic Editor. La fenêtre Éditeur Visual Basic s’affiche.
-
Cliquez avec le bouton droit sur un objet dans la fenêtre Projet, puis sélectionnez Importer un fichier. La boîte de dialogue Importer un fichier s’affiche.
-
Recherchez le fichier VBA, puis sélectionnez Ouvrir.
Exemple de code
Voici quelques codes de base que vous pouvez adapter et utiliser. Il s’agit d’un exemple de requête qui crée une liste avec des valeurs comprises entre 1 et 100.
Sub CreateSampleList()
ActiveWorkbook.Queries.Add Name:="SampleList", Formula:= _
"let" & vbCr & vbLf & _
"Source = {1..100}," & vbCr & vbLf & _
"ConvertedToTable = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error)," & vbCr & vbLf & _
"RenamedColumns = Table.RenameColumns(ConvertedToTable,{{""Column1"", ""ListValues""}})" & vbCr & vbLf & _
"in" & vbCr & vbLf & _
"RenamedColumns"
ActiveWorkbook.Worksheets.Add
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
"OLEDB;Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=SampleList;Extended Properties=""""" _
, Destination:=Range("$A$1")).QueryTable
.CommandType = xlCmdSql
.CommandText = Array("SELECT * FROM [SampleList]")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.ListObject.DisplayName = "SampleList"
.Refresh BackgroundQuery:=False
End With
End Sub