2016-10-18 4 views
3

Я пытаюсь изменить источник одного из моих запросов с помощью VBA. Это то, что я до сих пор:Как отредактировать источник запроса мощности с помощью VBA?

Dim mFormula As String 

mFormula = _ 

"let Source = Excel.Workbook(File.Contents(wbname), null, true) in Source" 

query1 = ActiveWorkbook.Queries.Add("LATEST", mFormula) 

Я установил wbname ранее в своем коде. «LATEST» уже добавлен, вместо того, чтобы удалять его и читать, я просто хотел бы изменить источник. Это возможно?

ответ

2

Вы можете использовать ActiveWorkbook.Queries.Item, чтобы получить запрос, который вы хотите, и использовать Formula свойство обновить формулу в запросе, как и так:

ActiveWorkbook.Queries.Item("LATEST").Formula = "let MyNewFormula = 1 + 1 in Source"

Примечание: это работает только на Excel 2016 или более поздней версии.

0

Я верю, что вам лучше избегать таких методов, которые могут вызвать проблемы совместимости, а также некоторые другие.

Если вы изучите M, вам, вероятно, не потребуется редактировать код с помощью VBA.

Смежные вопросы