Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hi, I want to create a dynamic query in Power BI. But I need to change my VBA in query to Power Query such that I can use it with a parameter
My original MDX query contains this piece of VBA:
Str(Int(CDbl(Now()) - 38718))
It takes todays date and time, converts it to a number, subtracts a value needed to get right row from cube, converts it to a whole number (integer) and then finally changes it to a string so that it can be used in the query.
I have tried to do the following in Power Query, without luck.
Value = Text.From(Int64.From(Number.From(DateTime.LocalNow()) - 38718))
Solved! Go to Solution.
Figured out what I did wrong!
I used Power Query formula inside StrToMember (which expects VBA formulaes):
StrToMember("[Report Date].[Report Date].&[" + Str(Int(CDbl(Now()) - 38718)) + "]")So I changed this to:
[Report Date].[Report Date].&["& Value &"]
And then my original Value formula worked as I expected.
Value = Text.From(Int64.From(Number.From(DateTime.LocalNow()) - 38718))
But I don't know if this is the "best" way to do it, but it works
Figured out what I did wrong!
I used Power Query formula inside StrToMember (which expects VBA formulaes):
StrToMember("[Report Date].[Report Date].&[" + Str(Int(CDbl(Now()) - 38718)) + "]")So I changed this to:
[Report Date].[Report Date].&["& Value &"]
And then my original Value formula worked as I expected.
Value = Text.From(Int64.From(Number.From(DateTime.LocalNow()) - 38718))
But I don't know if this is the "best" way to do it, but it works
You want something like this
Duration.Days(DateTime.Date(DateTime.LocalNow())-#date(2015,1,1))
Cheers Matt, can you explain what this is doing? Keep in mind that I want a number, not a date.
Here is the cube member for context:
StrToMember("[Report Date].[Report Date].&[" + Str(Int(CDbl(Now()) - 38718)) + "]")So using this VBA code for today it would yield:
[Report Date].[Report Date].&[3502]
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 38 | |
| 35 | |
| 33 | |
| 32 | |
| 29 |
| User | Count |
|---|---|
| 132 | |
| 90 | |
| 78 | |
| 66 | |
| 65 |