ActiveWorkbook.Queries.Add筛选条件

时间:2018-09-29 11:43:10

标签: excel vba

我有一个使用ActiveWorkbook.Queries.Add导入CSV文件的代码。但是在导入时,我只需要过滤那些包含用户给定值的行。下面是代码。我已经突出显示并加粗了我给出过滤条件的部分, [对象ID] = 140 。但是我想要的是,而不是 [对象ID] = 140 ,我想要的是对象ID = xObjID ,其中xObjID是从用户 xObjID = InputBox( “输入对象ID”)。但是它不起作用。有没有其他选择。请帮忙。

ActiveWorkbook.Queries.Add Name:=”S2KVTQ_VTQTimeTable”, Formula:= _

        “let” & Chr(13) & “” & Chr(10) & ”    Source = Csv.Document(File.Contents(“”” & xFileName & “””),[Delimiter=””,””, Columns=6, Encoding=1252, QuoteStyle=QuoteStyle.None]),” & Chr(13) & “” & Chr(10) & ”    #””Changed Type”” = Table.TransformColumnTypes(Source,{{“”Column1″”, Int64.Type}, {“”Column2″”, Int64.Type}, {“”Column3″”, type number}, {“”Column4″”, type datetime}, {“”Column5″”, type nu” & _

        “mber}, {“”Column6″”, Int64.Type}}),” & Chr(13) & “” & Chr(10) & ”    #””Removed Other Columns”” = Table.SelectColumns(#””Changed Type””,{“”Column2″”, “”Column3″”, “”Column4″”}),” & Chr(13) & “” & Chr(10) & ”    #””Renamed Columns”” = Table.RenameColumns(#””Removed Other Columns””,{{“”Column2″”, “”Object ID””}, {“”Column3″”, “”Value””}, {“”Column4″”, “”Date & Time””}}),” & Chr(13) & “” & Chr(10) & ”    #””Filtered Rows”” = Table.SelectRows(#””Rename” & _

        “d Columns””, each ([Object ID] = 140))” & Chr(13) & “” & Chr(10) & “in” & Chr(13) & “” & Chr(10) & ”    #””Filtered Rows”””

0 个答案:

没有答案