对powerquery

时间:2018-06-07 06:52:20

标签: excel vba excel-vba powerquery

我有一个Power Query,其中我试图从“Shift Sched”表单中获取单元格Z13中的链接。 Z13中的链接将获取我拥有数据的excel文件。单元名称定义为REFCELL

这是我从记录宏中获得的一张照片。 子powerquery() “ 'powerquery Macro “

”     范围( “W13”)。选择     ActiveWorkbook.Queries.Add Name:=“Schedules”,公式:= _         “让”& Chr(13)& “”& Chr(10)& “Source = Excel.Workbook(Web.Contents(”https://portal.ant.website.com/sites/wfl/Shift计划/轮班计划和Emp详细信息w.e.f Jun 03,2018-HYD.xlsx“”),null,true),“& Chr(13)& “”& Chr(10)& “Scheduleles_Sheet = Source {[Item =”“Schedules”“,Kind =”“Sheet”“]} [Data],”& Chr(13)& “”& Chr(10)& “#”“Changed Type”“= Table.TransformColumnTypes(Schedules_Sheet,{{”“Column1”“,type text},{”“Column2”“,type”& _         “text},{”“Column3”“,输入文字},{”“Column4”“,输入任意},{”“Column5”“,输入文字},{”“Column6”“,输入文字},{” “Column7”“,键入任意},{”“Column8”“,键入任意},{”“Column9”“,键入文本},{”“Column10”“,键入文本},{”“Column11”“,键入text},{“”Column12“”,输入文字},{“”Column13“”,输入文字},{“”Column14“”,输入文字},{“”Column15“”,输入文字},{“”第16栏“”,类型“& _         “text},{”“Column17”“,type text},{”“Column18”“,type text},{”“Column19”“,type any},{”“Column20”“,type text},{” “Column21”“,输入文字},{”“Column22”“,输入文字},{”“Column23”“,输入任意},{”“Column24”“,输入任意},{”“Column25”“,类型any},{“”Column26“”,输入任意},{“”Column27“”,输入任意},{“”Column28“”,输入任意},{“”Column29“”,输入任意},{“” Column30“”,ty“& _         “pe any},{”“Column31”“,输入文字},{”“Column32”“,输入任意},{”“Column33”“,输入文字},{”“Column34”“,输入文字},{ “”Column35“”,输入文字},{“”Column36“”,输入任意},{“”Column37“”,输入文字},{“”Column38“”,输入文字},{“”Column39“”,输入任意},{“”Column40“”,输入任意},{“”Column41“”,输入任意},{“”Column42“”,输入文字},{“”Column43“”,输入任意}})“ &安培; Chr(13)& “”& Chr(10)& “在”& Chr(13)& “”& Chr(10)& “#”“C”& _         “绞死类型”“”     Sheets.Add After:= ActiveSheet     使用ActiveSheet.ListObjects.Add(SourceType:= 0,Source:= _         “OLEDB; Provider = Microsoft.Mashup.OleDb.1; Data Source = $ Workbook $; Location = Schedules; Extended Properties =”“”“”_         ,Destination:= Range(“$ A $ 1”))。QueryTable         .CommandType = xlCmdSql         .CommandText = Array(“SELECT * FROM [Schedules]”)         .RowNumbers = False         .FillAdjacentFormulas = False         .PreserveFormatting = True         .RefreshOnFileOpen = False         .BackgroundQuery = True         .RefreshStyle = xlInsertDeleteCells         .SavePassword = False         .SaveData = True         .AdjustColumnWidth = True         .RefreshPeriod = 0         .PreserveColumnInfo = False         .ListObject.DisplayName =“Schedules_2”         .Refresh BackgroundQuery:= False     结束     Selection.ListObject.QueryTable.Refresh BackgroundQuery:= False 结束子

**这对我不起作用,因为链接不断变化,具体取决于日期。 2018年6月3日。链接必须从“Shift Sched”表格中的单元格z13中获取并加载到新工作表中。

1 个答案:

答案 0 :(得分:0)

这几乎都与将""引号放在正确的位置以正确组合查询字符串有关。试试这个:

ActiveWorkbook.Queries.Add _
    Name:="Schedules", _
    Formula:="let" & vbCr & _
            vbTab & "MyURL = Excel.CurrentWorkbook(){[Name=""REFCELL""]}[Content][Column1]{0}," & vbCr & _
            vbTab & "Source = Web.Page(Web.Contents(MyURL))" & vbCr & _
            "in Source"