Excel för Mac stöder nu Power Query Refresh för många data källor, samt Query-generering via VBA. Redigering i Power Query Editor stöds inte ännu.
Uppdatera Power Query-frågor
Du kan uppdatera frågor från följande data Källor:
-
Icke. TXT,. CSV,. XLSX,. XML eller. JSON-filer
-
Tabeller och områden i den aktuella arbets boken
-
SQL Server med databas identifiering
-
SharePoint-filer, mappar och listor *
-
OData-feed *
Obs!: * Uppdatera från SharePoint-filer, mappar och listor och från OData-feeds finns i Beta versionen och är för närvarande endast tillgängliga för Office Insiders.
Det krävs inget speciellt kommando-klicka bara på Data > Uppdatera allaeller Använd någon annan metod för extern data uppdatering.
Autentiseringsuppgifter
När du uppdaterar en fråga för första gången kan du uppmanas att logga in. Välj autentiseringsmetod och ange inloggnings uppgifter för att ansluta till data källan och fortsätt med uppdateringen. De autentiseringsuppgifter som visas beror på data källan.
Här är till exempel SQL Server-autentiseringsuppgifterna:
Och här är SharePoint-uppmaningen:
Rensa dina inloggnings uppgifter
Om du vill ta bort befintliga inloggnings uppgifter väljer du Data > anslutningar, väljer önskad anslutning och väljer sedan Rensa behörigheter.
Använda VBA för att redigera Power Query-frågor
Även om redigering i Power Query Editor inte är tillgängligt ännu i Excel för Mac, stöder VBA Power Query-redigering. Här är en kod som du kan anpassa och använda.
Skapa en fråga och hämta dess data
Här är ett enkelt exempel som lägger till en fråga som skapar en lista med värden från 1 till 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