🎯 Key Takeaways for quick navigation: 00:00 🚀 Notion has completely reworked its formulas. No need to panic, as old formulas have been automatically converted. 00:29 📝 The new Notion update includes multi-line editing and improved error messages. No more 'prop' and weird quotations, you can now reference properties by their names. 01:11 💡 Formulas now support arrays, variables, and nested access to properties, making them more powerful than before. 01:39 🔄 Most of the approaches and workarounds from the old version will still work with slight tweaks in the new formula language. 03:03 ⏳ Example shown on how to check if a task is overdue using the new formula language. 04:57 🌈 Introduction of the 'ifs' operator, which simplifies multiple conditional checks. 05:51 🔢 Introduction to arrays in Notion. Multi-select, people property, and relations are considered arrays. 07:41 🔗 New DOT operator introduced for chaining commands and accessing system properties. 09:06 📖 DOT command makes formulas easier to read and understand. 11:24 🗺️ Map operator allows you to work with every single item of an array. 14:28 🔍 Filter operator allows you to remove entries from an array based on conditions. 17:53 📏 Length operator counts the length of an array or the letters in a word. 19:56 🎨 Style operator allows you to apply Rich Text formatting to any output. 20:24 📝 Different property types in Notion have unique capabilities, like numbers for mathematical expressions and strings for text. 20:54 🔍 You can create a hidden "result helper" property for calculations, then display the styled result as a string. 21:22 🎨 Use the "style" command to format property values, including bolding and color options. 22:02 🌈 Combine styling with conditional logic to create visually distinct outputs. 23:24 📅 For project management, create a formula to display the next open task with the earliest due date. 24:02 🖋️ Use "let" to define variables in formulas, simplifying complex calculations. 25:36 🧠 Use "find" to return the first true result, as opposed to "filter," which returns all true results. 27:25 🗓️ Utilize "map" and "filter" to sort an array of tasks by due dates. 28:45 🏷️ Use "join" to concatenate different property values into a single string for display. 30:22 🚀 Advanced formulas in Notion 2.0 offer powerful new possibilities for task and project management. Made with HARPA AI
This had taught me so much!! I had so much trouble to find an explanation that I (someone with 0% skills in programming) could follow. Thanks for giving us great tools to solve our own notion needs & problems!
@@mfreihaendig thanks, I literally just opened Notion and saw that now it’s showing up 🙏🏻🙏🏻🙏🏻 looking forward to some more great usage of these new formulas.
Ah that’s a really complex formula right now depending on the amount of edge cases you wanna handle. The team is working on a shorter formula, I’d actually wait for that instead of building it, particularly if you need to account for holidays and stuff 😅
@@mfreihaendig thank you. No i really dont care about holidays. I came up with a formula myself that works well enough i would say just counting the weeks × 7 -2 × number of weeks. (I think that was it. I might be forgetting something). It isnt perfect but gives me an idea. Is just to be aware of how kany days i have left to complete my work and i want it to work specially 3 days before and 7 days before (work days) so it kinda does the job for now from what ive tested
@@mfreihaendig I did struggled with something earlier last week but I forgot what it was. Something with merging two databases into 1 view I believe. Will let you know when I fully remember!
Congratulations on the video👏. In the "find" part, I wanted to know if there is a way to show more than one task on the same line? Because the video only shows one task, so I wanted to show at least 4 tasks for each project.
My note: 🖼5:28 ifs(kondisi 1, “kalo benar gmn”, kondisi 2, “kalo benar gmn”, “kalo salah gmn”) 📌Dot operator allows you to do 2 things: 1). call for function or chain commands property.function().function() 2). access system. (email, & nomor telp from people property, padahal gak ada property email) 🐸MAP technically take an array & then ur commamd and then it builds you new 5array. 📌cara formula 1.0 = 🔹map(task,current.) ➡️ rebuild exact same array with task relation property 🔹function(property,what should it do with these task.get access to properties from task) 📌Cara formula 2.0 🔹task.map 🔹property.function 📌”current” variable what it will do is to go over the whole array & take apply something to every single step of it 12:37 📌filter (di project database yg punya relation me project database - hide done test 🎯length(task) ➡️ jumlah task di database task yg relate sama project tsb. ini dibikin di database project. 📌Filter = a lot of thing. 🕵🏻♀️ Find = only one thing.🕵🏻♀️ -Nama & tanpa nama 28:18 🕵🏻♀️Join
Thank you for the detailed explanation and real-life examples! I'm looking into merging two databases into one calender view and playing around with the new features
@@mfreihaendig I guess it's not technically merging, but I want to relate two databases together by their shared dates 🤔 basically if date1=date2 output name entry -- but I think Notion really doesn't allow for something like that
Are we able to connect multiple databases together? For example, if I have multiple databases for each social media platform, can i combine into a master calendar/table them perhaps with a formula or other way?
Sure thing, that’s certainly possible! You could use the approach shared in this video to set up your relations and then use formulas to combine data from all sources: th-cam.com/video/vbiR41OnQJY/w-d-xo.html
Oh..ooh….oooh! I have sooo much decluttering to do! 😅 And the style possibilities! I’m going to have a lot of fun with this and can’t wait to see what people will create so I’ll want to change it up all over again. It will be glorious! Thank you for working us through and giving us some starting examples!
@@mfreihaendig I test it now. it's not that hard but the code is tooo long, the biggest problem is. if you use the Style() code all in one property. it removed the cell format. i use it on my trading journal %gain/loss it did good but 20% become -0020. ( i can force it by .round() then add + "%" string) for it to be finally done. We are not yet really there. for now this is meant for text formatting and for simple integers. ecxample is on the expense where you want to stylize the word on budget and over budget. to green and red.
Those are two different things, no? It’s either an array or a date data type. For dates, you can use something like parseDate to turn a string into a date - and arrays can simply be built by using [ ] around your information
@@mfreihaendig I was looking for the exact formatting notion needed, was gonna switch to coda cuz I couldn't find the solution for this issue. The idea is to fine-tune a gpt3.5 model so it extracts the necessary data into a format notion supports, and have notion populate a table from 1 cell with a long string which has all this data in plain text. (name, address, date, time, notes, etc.)
Thanks Mathias. I can confidently say Notion's now at par with Coda's formula functionality. So excited for this - lots of my template ideas are now possible 🙂
New Question - Hey Mattias - any chance you have a video which would detail how to do the following? I classify tasks by "life bucket #1" or "Life bucket #2" I'd like to see a database Title: The date Column 2: A list of tasks related to bucket #1 - as a relation so i can add and remove Column 3: A list of tasks related to bucket #2 - as a relation so i can add and remove
Have you checked out my tutorial on building a habit tracker? You could take the basic setup and then just have relation properties for the buckets instead of checkboxes ☺️
is it now possible to have a dashboard like in excel. Let's say you have a database with all your income and another with your expenses. Can you create a 2 row table and in the first row calculate the income and the second the expenses
Yes that is possible - you just need to connect the first entry to all income and the second one to all expenses 💪🏻 You can check this video for more inspiration: th-cam.com/video/7g6eYqyEp0w/w-d-xo.htmlsi=6uNwfGKXlkc1b2xn
Thank you for the video. Like Excel's vlookup function, would it be possible to retrieve one of the properties based on the conditions of the page property value?
@@8bulcul As promised, here's a simple vlookup example: prop("Customer 1").filter(current.prop("Name")==prop("Customer")) This will check in the related customer database which entries name equals the one listed in the Customer property You could adapt that to any property combination ☺
great video and great update! It's still a big problem for me, but correct me if I'm wrong. basically if I have 3db: A, B and C in which I have A linked to B and B linked to C (therefore A and C are not directly connected) through the new formulas, I can more easily show the elements of A in C and the elements of C in A. but the problem remains that this output of the formula is seen in "text" format, so if I then have to use these properties, for example as a filter within a linked database, I will not be able to "select" the element/elements, but only the conditions with a text property I hope I made myself clear do you have a method to solve the problem?
Hm that should actually be possible now - I’d have to play around with it (will do so tomorrow), but I’d assume that two nested maps should do the trick! That way, you should be able to build a new array of pages that counts as a rich object 💪🏻
@@mfreihaendig thank you!!! I tried and tried again but I still have as "text"... different from before obviously as they are now clickable pages at leats, but if I use them as a filter it shows me as a text filter and not a selection filter like a direct relation for example...
Hi Matthias thanks for the super helpful tutorial. I'm wondering, is there a way to create a formula that adds numbers across different rows from the same column but have it relate to each day? For example, let's say I was building a time tracker and every day I input the different tasks I do and how long they take (as well as other info). Is there a way to have a sum of every time taken number associated to a day come up for every row with that date? So for eg, one 01/01/2023, I have 3 rows with 20,30, 40 respectively in the time column. For these rows, would there be a way for a formula to calculate a "current total work time today" without it deleting the number tomorrow (by telling it to calculate "today")? I know you can filter for today and calculate sum at the bottom but would love to find a way it tracks and keeps count within the database on any given day. I hope that made sense!
Yes you could create a second database, relate it to your first and then always match the entry to the daily entry 💪🏻 that way, you could always calculate the total time for that day ☺️
Hi Matthias, Thanks for your videos always very instructive. I have one question concerning "style" : in your example, when using style it makes it loose the currency. I tried using toNumber in the formula to turn it back to a currency result, but with no success (I loose the style doing that). Would you have an idea to keep the currency result but with applying style to it ? Thanks for your help.
Sure thing! You need to use join() to combine the string and currency and the apply the style. Like this: style( join( [„$“, YOUR_NUMBER],““), „b“, „red“)
Hi Matthias, finally I couldn't contact you through linkedin but I'm writing you here. As I said, I really like your content and like you, I am a TH-camr of my latin community. I would like to know if I can take some of your examples to make a video about formulas 2.0. Regards😬
Hi! is it posible to create a formula that replicates in the project the date of the last task of the project? To be clearer: I have a project with a Property "Last Contacted" and all the tasks added are the different conctacts with the client. Is there a way that the Last Contacted field auto-completes with the date of the last added task? Right now we do it manually, I would be of great help if it auto-completes. Thanks in advance for you help!
It sure is! Here's a sample formula that automatically shows the latest date from related entries under the property "customers": prop("Customers").map(current.prop("Date")).sort().reverse().first()
Thank you for always posting videos. I couldn't understand it after 26 minutes.The content of the videos can be difficult at times, so I would appreciate it if you could post them separately for beginners and for advanced users.
That would be great indeed - currently don’t have the capacity unfortunately, but hopefully my beginners course can get you up to speed to then understand the more complicated examples ☺️
is there a way to get the name of the formula property inside the formula? for example the "Styled Result" formula property should say Styled Result in every cell?
Thank you very much for the video Matthias, excellent as always. I have encountered a problem and that is that using the map option I get a number in this case in €, but then I don't know how to multiply it by a number property, it always gives me an error, and if I do it with rollup the same thing happens to me, yes If you tell me, I would appreciate it, thank you very much.
Sounds like you have the number in the wrong format for whatever reason - could it be a string? Check which side the output is aligned to. Numbers in Notion are the only thing aligned to the right of a property, everything else is left aligned If that’s the issue, try using toNumber() as an operator to turn it into a number 💪🏻
Is there a way to find out when they do maintenance so we don't get caught in it? I assume this is why Notion went down for a little while recently... updating to the new version. I heard of at least one person that lost part of their data because they were using the Notion at this time.
Hey Matthias, i was wondering if such thing exists, can i apply a formula where there is a log property (where i log a number on a daily or weekly basis to track a habit) and then i have a checkbox cell where i click the box and it automatically +1 the number in the log cell so i do not have to retype the number every day or week manually! Your help would be greatly appreciated ❤
You can’t update a cell via formulas, but you could probably build a workaround that does something similar 🤔 Any reason though why you don’t simply count the number of checked boxes? Like in my habit tracker video: th-cam.com/video/ai87rp01f6A/w-d-xo.html
Hi Matthias! It's great how explained each new functions. Also you were the first to disclose this hidden huge update in the TH-cam community. But I have got myself in problem with this update.😥Can you tell me how can we check two properties to be true(date and check-box) from a relation to get a filtered list in the formulas? It would help me greatly.
Just so I understand this correctly - you have a database with a date and a checkbox and it’s related to another one. In that other database, you want to show a list of related items with a certain date condition and a checked checkbox? What’s the date condition?
@@mfreihaendigYes, sort of that! I have a DB(the notification centre of your last video) where I want to see how many tasks I have left today. For that I made a relation with tasks(db) and I want to create a formula where the date should be today and the checkbox is unchecked. My question is can I write both conditions in one single formula condition, if yes how so?!
@@annyatamghosh3372 sure thing, you can use the and() operator! It could look a little something like this: and(formatDate(prop("Date"),"DD-MM-YYYY")==formatDate(now(),"DD-MM-YYYY"),prop("Checkbox"))
That would be the style() operator ☺️ just remember that styling an element will turn it into text, so you need to do formatDate first to turn the date into the right format ☺️💪🏻
@@mfreihaendig I used a formula to call a relationship which was a page, or even a rollup that's a page. Although at the relation level, I am able to apply filter in the linked view (not formula filter, view filter). With this formula version of rollup, I am unable to see the dropdown of pages to filter by
@@irfanadamm5819 ah yes, that's unfortunately a limitation right now - formulas can get super close to replacing roll-ups, but that's an area where a dedicated roll-up is still needed for now
Firstly thanks for the video and the great work. It’s really beneficial and appreciated. Second: what a timely update! I’m working on a DB build that really needs this. But… Not being a programmer…. I was wondering if you could take a look? I’ve set up a Notion page to show you. It’s a join between a few tables and I’m not sure how to pull it off. Thanks. Martin
22:40 I really hope they improve this much better on the next version. Formula 3.0 it's too clunky to have extra property just for style... it's just doesn't feel right.
@@mfreihaendig if we don't create a new property just for the aesthetic and instead do it in one go on the same cell. the value will be converted into text. if you are using % (such as % gain or %loss) you will then need to round() it then add "%" to it. not to mention once it was style() you will not be able to use the value conveniently to another formula. you will need to use toNumber() to convert it back to number (I'm not even sure if this will work) and it's toooooo inconvenient to do code in that way. it was as if they make this style() meant for text only not for numbers.
@@mfreihaendigHi, sir. I never learn any programming languange like javascript or anything else before. So before I jump to watch this video, should I watch your Notion 1.0 video first? ➡️ th-cam.com/video/8ZGIWY5pNqw/w-d-xo.htmlsi=k_oRImW7HmK6Q1lu
The update? I mean it also takes a lot of resources to keep a software like Notion running and this is a super fundamental change 😅 earlier is always nicer, but I wouldn’t say they dropped the ball here ;)
@mfreihaendig I am trying to add a formula to calculate hours from Date 1 in Table 1 and Date 2 in Table 2. I have read that I need to create a rollup, but, when I add the datebetween formula it doesn't work for a rollup. Is there a way to find the time between a rollup date range? I have tried this: format(dateBetween(dateEnd(End), dateStart(Start), "hours")) + " hr " + format(dateBetween(dateEnd(End), dateStart(Start), "minutes") % 60) + " min" ERROR: Argument of type array does not satisfy function dateEnd(). [27,28] Argument of type array does not satisfy function dateStart(). [41,42] Argument of type array does not satisfy function dateEnd(). [93,94]
🎯 Key Takeaways for quick navigation:
00:00 🚀 Notion has completely reworked its formulas. No need to panic, as old formulas have been automatically converted.
00:29 📝 The new Notion update includes multi-line editing and improved error messages. No more 'prop' and weird quotations, you can now reference properties by their names.
01:11 💡 Formulas now support arrays, variables, and nested access to properties, making them more powerful than before.
01:39 🔄 Most of the approaches and workarounds from the old version will still work with slight tweaks in the new formula language.
03:03 ⏳ Example shown on how to check if a task is overdue using the new formula language.
04:57 🌈 Introduction of the 'ifs' operator, which simplifies multiple conditional checks.
05:51 🔢 Introduction to arrays in Notion. Multi-select, people property, and relations are considered arrays.
07:41 🔗 New DOT operator introduced for chaining commands and accessing system properties.
09:06 📖 DOT command makes formulas easier to read and understand.
11:24 🗺️ Map operator allows you to work with every single item of an array.
14:28 🔍 Filter operator allows you to remove entries from an array based on conditions.
17:53 📏 Length operator counts the length of an array or the letters in a word.
19:56 🎨 Style operator allows you to apply Rich Text formatting to any output.
20:24 📝 Different property types in Notion have unique capabilities, like numbers for mathematical expressions and strings for text.
20:54 🔍 You can create a hidden "result helper" property for calculations, then display the styled result as a string.
21:22 🎨 Use the "style" command to format property values, including bolding and color options.
22:02 🌈 Combine styling with conditional logic to create visually distinct outputs.
23:24 📅 For project management, create a formula to display the next open task with the earliest due date.
24:02 🖋️ Use "let" to define variables in formulas, simplifying complex calculations.
25:36 🧠 Use "find" to return the first true result, as opposed to "filter," which returns all true results.
27:25 🗓️ Utilize "map" and "filter" to sort an array of tasks by due dates.
28:45 🏷️ Use "join" to concatenate different property values into a single string for display.
30:22 🚀 Advanced formulas in Notion 2.0 offer powerful new possibilities for task and project management.
Made with HARPA AI
Appreciate this! Thanks 😇
It seems they are inspired by Coda which have all this stuff (like the filter function)... which is big step forward for Notion
Oh yes! This is a huge upgrade for the functionality 💪🏻
This had taught me so much!! I had so much trouble to find an explanation that I (someone with 0% skills in programming) could follow. Thanks for giving us great tools to solve our own notion needs & problems!
Amazing, so happy to hear that! 😇
Matthias, great video! Do you know when this is rolling out to everyone?
It should be out for you right now! If you don’t see it, restart or refresh Notion 😇
@@mfreihaendig thanks, I literally just opened Notion and saw that now it’s showing up 🙏🏻🙏🏻🙏🏻 looking forward to some more great usage of these new formulas.
Thank you! An amazing and perfect video! You really helped me wonders!
Oh so happy to hear that! ☺️
@@mfreihaendig It's the video that Notion should have done!
Really well explained Matthias. Thanks. In looking forward to use this!
Glad to hear this! ☺️
Long-waited changes!! Awesome news! Thanks for the detailed info!
Absolutely incredible Update indeed 😍
This is amazing, thanks Matthias for your well-explained video!!
Glad you enjoyed it! ☺️
How can I count how many business days I have left until due date?
Ah that’s a really complex formula right now depending on the amount of edge cases you wanna handle. The team is working on a shorter formula, I’d actually wait for that instead of building it, particularly if you need to account for holidays and stuff 😅
@@mfreihaendig thank you. No i really dont care about holidays. I came up with a formula myself that works well enough i would say just counting the weeks × 7 -2 × number of weeks. (I think that was it. I might be forgetting something). It isnt perfect but gives me an idea. Is just to be aware of how kany days i have left to complete my work and i want it to work specially 3 days before and 7 days before (work days) so it kinda does the job for now from what ive tested
@@dianaayt oh yes, totally! If a simple estimate is enough for you, then that's a great way to do it 😇
Your production quality has gone up a lot since you started! Good video!
Oh I am so happy to hear that! Trying my best 😇
Thank you for going so in-depth on formulas 2.0 capabilities. Great video
Glad you enjoyed it ☺️ anything in particular that you’d love to see next?
@@mfreihaendig I did struggled with something earlier last week but I forgot what it was. Something with merging two databases into 1 view I believe. Will let you know when I fully remember!
@@silvansoeters please do so!
Congratulations on the video👏. In the "find" part, I wanted to know if there is a way to show more than one task on the same line? Because the video only shows one task, so I wanted to show at least 4 tasks for each project.
No, find always only returns one result - you would need to use filter to show several entries or combine multiple finds 💪🏻
@@mfreihaendig I got it, thanks
My note:
🖼5:28 ifs(kondisi 1, “kalo benar gmn”, kondisi 2, “kalo benar gmn”, “kalo salah gmn”)
📌Dot operator allows you to do 2 things:
1). call for function or chain commands
property.function().function()
2). access system.
(email, & nomor telp from people property, padahal gak ada property email)
🐸MAP
technically take an array & then ur commamd and then it builds you new 5array.
📌cara formula 1.0 =
🔹map(task,current.) ➡️ rebuild exact same array with task relation property
🔹function(property,what should it do with these task.get access to properties from task)
📌Cara formula 2.0
🔹task.map
🔹property.function
📌”current” variable what it will do is to go over the whole array & take apply something to every single step of it 12:37
📌filter (di project database yg punya relation me project database - hide done test
🎯length(task) ➡️ jumlah task di database task yg relate sama project tsb. ini dibikin di database project.
📌Filter = a lot of thing. 🕵🏻♀️
Find = only one thing.🕵🏻♀️
-Nama & tanpa nama 28:18
🕵🏻♀️Join
🔥
Thank you for the detailed explanation and real-life examples! I'm looking into merging two databases into one calender view and playing around with the new features
Oh that sounds like a great idea ☺️ though the merging isn’t the easiest probably since you can’t create new entries 🤔
@@mfreihaendig I guess it's not technically merging, but I want to relate two databases together by their shared dates 🤔 basically if date1=date2 output name entry -- but I think Notion really doesn't allow for something like that
thank you for the very nice and educational video. Love your style as well.
Really appreciate this! ☺️ trying my best to up the production quality and value so super happy to hear that!
This is SUPER powerful! dot notations, map, and so many other functionalities are definitely programmer friendly!
Oh yes, programmers are gonna have a field day with this! 😍 got a lot more similar to JS overall
Are we able to connect multiple databases together? For example, if I have multiple databases for each social media platform, can i combine into a master calendar/table them perhaps with a formula or other way?
Sure thing, that’s certainly possible! You could use the approach shared in this video to set up your relations and then use formulas to combine data from all sources:
th-cam.com/video/vbiR41OnQJY/w-d-xo.html
Oh..ooh….oooh! I have sooo much decluttering to do! 😅
And the style possibilities! I’m going to have a lot of fun with this and can’t wait to see what people will create so I’ll want to change it up all over again. It will be glorious! Thank you for working us through and giving us some starting examples!
Right? 😍😍 time to dive deep into everything and see what all we can do - Watcha gonna do first? 😎
nah.. I;ll wait for the formula 3.0
I wish they fix this on the next version.
coz it's too clunky to add extra properties just for aesthetic.
@@ChibiKeruchan if you don't need to do any additional calculations, you could do it all in one!
@@mfreihaendig I test it now. it's not that hard but the code is tooo long, the biggest problem is. if you use the Style() code all in one property.
it removed the cell format. i use it on my trading journal %gain/loss
it did good but 20% become -0020. ( i can force it by .round() then add + "%" string) for it to be finally done.
We are not yet really there. for now this is meant for text formatting and for simple integers.
ecxample is on the expense where you want to stylize the word on budget and over budget. to green and red.
How do you make arrays from plain text? Like a date to an actual date field.
Those are two different things, no? It’s either an array or a date data type. For dates, you can use something like parseDate to turn a string into a date - and arrays can simply be built by using [ ] around your information
@@mfreihaendig I was looking for the exact formatting notion needed, was gonna switch to coda cuz I couldn't find the solution for this issue. The idea is to fine-tune a gpt3.5 model so it extracts the necessary data into a format notion supports, and have notion populate a table from 1 cell with a long string which has all this data in plain text. (name, address, date, time, notes, etc.)
Thanks Mathias. I can confidently say Notion's now at par with Coda's formula functionality. So excited for this - lots of my template ideas are now possible 🙂
Oh yes I don’t think we can overstate the magnitude of this! Plus, so many more changes and improvements are possible on top of this!
Awesome man!!
Glad you like it!☺️
New Question - Hey Mattias - any chance you have a video which would detail how to do the following?
I classify tasks by "life bucket #1" or "Life bucket #2"
I'd like to see a database
Title: The date
Column 2: A list of tasks related to bucket #1 - as a relation so i can add and remove
Column 3: A list of tasks related to bucket #2 - as a relation so i can add and remove
Have you checked out my tutorial on building a habit tracker? You could take the basic setup and then just have relation properties for the buckets instead of checkboxes ☺️
is it now possible to have a dashboard like in excel. Let's say you have a database with all your income and another with your expenses. Can you create a 2 row table and in the first row calculate the income and the second the expenses
Yes that is possible - you just need to connect the first entry to all income and the second one to all expenses 💪🏻
You can check this video for more inspiration: th-cam.com/video/7g6eYqyEp0w/w-d-xo.htmlsi=6uNwfGKXlkc1b2xn
Awesome explanation! Thanks for the early video.
Oh thank you, glad you like it 😇
Great simple explanation for complex Notion formulas. Keep
going!
Thanks, really appreciate this! ☺️
Thank you so much i was suffering to understand some things and your video Was very cool to understand even for à french Guy.
Glad to hear that! 😇
❤woah thank you soo much for early updates
Always! I was soooo excited to share this! 😍
Thank you for the video. Like Excel's vlookup function, would it be possible to retrieve one of the properties based on the conditions of the page property value?
Yep you can do that using find ☺️ will send the formula later 💪🏻
@@mfreihaendig I'm very excited! I'll be waiting. ❤❤❤
@@8bulcul As promised, here's a simple vlookup example:
prop("Customer 1").filter(current.prop("Name")==prop("Customer"))
This will check in the related customer database which entries name equals the one listed in the Customer property
You could adapt that to any property combination ☺
great video and great update!
It's still a big problem for me, but correct me if I'm wrong.
basically if I have 3db:
A, B and C in which I have A linked to B and B linked to C (therefore A and C are not directly connected)
through the new formulas, I can more easily show the elements of A in C and the elements of C in A.
but the problem remains that this output of the formula is seen in "text" format, so if I then have to use these properties, for example as a filter within a linked database, I will not be able to "select" the element/elements, but only the conditions with a text property
I hope I made myself clear
do you have a method to solve the problem?
Hm that should actually be possible now - I’d have to play around with it (will do so tomorrow), but I’d assume that two nested maps should do the trick! That way, you should be able to build a new array of pages that counts as a rich object 💪🏻
@@mfreihaendig thank you!!! I tried and tried again but I still have as "text"... different from before obviously as they are now clickable pages at leats, but if I use them as a filter it shows me as a text filter and not a selection filter like a direct relation for example...
@@prepos9376 yeah I checked - that's actually a remaining difference to relations for now, can't set filters in the same way rn. Hopefully soon!
Hi Matthias thanks for the super helpful tutorial. I'm wondering, is there a way to create a formula that adds numbers across different rows from the same column but have it relate to each day? For example, let's say I was building a time tracker and every day I input the different tasks I do and how long they take (as well as other info). Is there a way to have a sum of every time taken number associated to a day come up for every row with that date? So for eg, one 01/01/2023, I have 3 rows with 20,30, 40 respectively in the time column. For these rows, would there be a way for a formula to calculate a "current total work time today" without it deleting the number tomorrow (by telling it to calculate "today")? I know you can filter for today and calculate sum at the bottom but would love to find a way it tracks and keeps count within the database on any given day. I hope that made sense!
Yes you could create a second database, relate it to your first and then always match the entry to the daily entry 💪🏻 that way, you could always calculate the total time for that day ☺️
Hi Matthias, Thanks for your videos always very instructive. I have one question concerning "style" : in your example, when using style it makes it loose the currency. I tried using toNumber in the formula to turn it back to a currency result, but with no success (I loose the style doing that). Would you have an idea to keep the currency result but with applying style to it ? Thanks for your help.
Sure thing! You need to use join() to combine the string and currency and the apply the style.
Like this:
style( join( [„$“, YOUR_NUMBER],““), „b“, „red“)
i guess i accidentally picked the perfect time to finally make myself learn notion formulas
Haha indeed the perfect opportunity!
Hi Matthias, finally I couldn't contact you through linkedin but I'm writing you here. As I said, I really like your content and like you, I am a TH-camr of my latin community. I would like to know if I can take some of your examples to make a video about formulas 2.0.
Regards😬
Hey Maxi, sure thing feel free to use them! Would be great if you could link to my channel and website ☺️
Let me know how it goes!
Hi! is it posible to create a formula that replicates in the project the date of the last task of the project?
To be clearer: I have a project with a Property "Last Contacted" and all the tasks added are the different conctacts with the client. Is there a way that the Last Contacted field auto-completes with the date of the last added task? Right now we do it manually, I would be of great help if it auto-completes. Thanks in advance for you help!
It sure is!
Here's a sample formula that automatically shows the latest date from related entries under the property "customers":
prop("Customers").map(current.prop("Date")).sort().reverse().first()
Thank you for always posting videos. I couldn't understand it after 26 minutes.The content of the videos can be difficult at times, so I would appreciate it if you could post them separately for beginners and for advanced users.
That would be great indeed - currently don’t have the capacity unfortunately, but hopefully my beginners course can get you up to speed to then understand the more complicated examples ☺️
I want to use it to measure changes in weight and blood sugar levels.Please tell me how to extract the first and next data from a relational table.
is there a way to get the name of the formula property inside the formula? for example the "Styled Result" formula property should say Styled Result in every cell?
No you can’t reference the formula property in itself - you’d need to hardcode the name in or manually change it 👍🏻
can i subtract roll up number with roll up number?
Sure thing, you can do that simply by using the - operator
how do we add a second line
Hold down shift while pressing enter 💪🏻
Thank you very much for the video
Matthias, excellent as always. I have encountered a problem and that is that using the map option I get a number in this case in €, but then I don't know how to multiply it by a number property, it always gives me an error, and if I do it with rollup the same thing happens to me, yes If you tell me, I would appreciate it, thank you very much.
Sounds like you have the number in the wrong format for whatever reason - could it be a string?
Check which side the output is aligned to. Numbers in Notion are the only thing aligned to the right of a property, everything else is left aligned
If that’s the issue, try using toNumber() as an operator to turn it into a number 💪🏻
Mind blowing changes! ⚡
Absolutely incredible! 😍😍
Is there a way to find out when they do maintenance so we don't get caught in it? I assume this is why Notion went down for a little while recently... updating to the new version. I heard of at least one person that lost part of their data because they were using the Notion at this time.
Unfortunately no, though that wasn’t the cause for the recent issue. They started the rollout only a few hours before I released the video 🤔
How can i do a progress bar in notion with a check box when i reach 100% ?
You can simply use an if statement that shows the number it’s smaller than 1 and true if it’s 1 like this:
if(prop("Number")
@@mfreihaendig Thanks, i used this and worked
prop("Read") / prop("Target") >= 1 ? "✅ Done" : (format(substring("██████████", 0, floor(prop("Read") / prop("Target")* 10))) + substring("░░░░░░░░░░░░░░░░░░░░", 0, ceil(10 - prop("Read") / prop("Target") * 10)) + " " + format(round(prop("Read") / prop("Target") * 100)) + format(empty(prop("Read")) ? "0%" : "%"))
💙💙💙
Hey Matthias, i was wondering if such thing exists, can i apply a formula where there is a log property (where i log a number on a daily or weekly basis to track a habit) and then i have a checkbox cell where i click the box and it automatically +1 the number in the log cell so i do not have to retype the number every day or week manually! Your help would be greatly appreciated ❤
You can’t update a cell via formulas, but you could probably build a workaround that does something similar 🤔
Any reason though why you don’t simply count the number of checked boxes?
Like in my habit tracker video: th-cam.com/video/ai87rp01f6A/w-d-xo.html
Thanks!, the problem with that is that I have a 143 "habits" to track, it is time consuming & very exhausting to build, thanks anyway❤ @@mfreihaendig
Hi Matthias! It's great how explained each new functions. Also you were the first to disclose this hidden huge update in the TH-cam community. But I have got myself in problem with this update.😥Can you tell me how can we check two properties to be true(date and check-box) from a relation to get a filtered list in the formulas? It would help me greatly.
Just so I understand this correctly - you have a database with a date and a checkbox and it’s related to another one. In that other database, you want to show a list of related items with a certain date condition and a checked checkbox? What’s the date condition?
@@mfreihaendigYes, sort of that! I have a DB(the notification centre of your last video) where I want to see how many tasks I have left today. For that I made a relation with tasks(db) and I want to create a formula where the date should be today and the checkbox is unchecked. My question is can I write both conditions in one single formula condition, if yes how so?!
@@annyatamghosh3372 sure thing, you can use the and() operator!
It could look a little something like this:
and(formatDate(prop("Date"),"DD-MM-YYYY")==formatDate(now(),"DD-MM-YYYY"),prop("Checkbox"))
@@mfreihaendig thankyou Mathias 😊 it was very much helpful...
This is HUGE! 🤯🤯🤯🤯
It’s crazy right? 😍😍
hi i have a question, if i’m having a deadline formula, and i have a date between variable, how do i make the date numbers coloured?
That would be the style() operator ☺️ just remember that styling an element will turn it into text, so you need to do formatDate first to turn the date into the right format ☺️💪🏻
okay but how did you film this video over a week ago?
MAGIC! That and being a Notion Ambassador - they involved us in bug testing. Big kudos to the team, they did a tremendous amount of work!
unrelated but how do I filter by a page, its from a rollup
What exactly do you mean? Could you expand a bit on your setup and what you’re trying to achieve?
@@mfreihaendig I used a formula to call a relationship which was a page, or even a rollup that's a page. Although at the relation level, I am able to apply filter in the linked view (not formula filter, view filter). With this formula version of rollup, I am unable to see the dropdown of pages to filter by
@@irfanadamm5819 ah yes, that's unfortunately a limitation right now - formulas can get super close to replacing roll-ups, but that's an area where a dedicated roll-up is still needed for now
even though I can return a page using formula, neither can I group a view, nor select from pages dropdown, when trying to filter
@@irfanadamm5819 Yes, as mentioned, that's still something you'd need to use a roll-up for atm - but I'm pretty sure it's on the roadmap!
Matthias... I don't understand. I posted a comment here and now it's gone. Did you delete it? Thanks.
Nope, never delete any comments! Maybe didn’t go through? What was it about? 😇
Firstly thanks for the video and the great work. It’s really beneficial and appreciated.
Second: what a timely update! I’m working on a DB build that really needs this. But… Not being a programmer…. I was wondering if you could take a look? I’ve set up a Notion page to show you. It’s a join between a few tables and I’m not sure how to pull it off.
Thanks.
Martin
@@MartinHansell send me an email with the page and the details! Can't make any promises, but if I find the time, I'll have a quick look ☺
22:40 I really hope they improve this much better on the next version. Formula 3.0
it's too clunky to have extra property just for style... it's just doesn't feel right.
How would you implement it? 🤔 it would be nice if the type was kept, but in 98% of cases, you‘re probably still fine like this 💪🏻
@@mfreihaendig if we don't create a new property just for the aesthetic and instead do it in one go on the same cell.
the value will be converted into text. if you are using % (such as % gain or %loss) you will then need to round() it then add "%" to it.
not to mention once it was style() you will not be able to use the value conveniently to another formula.
you will need to use toNumber() to convert it back to number (I'm not even sure if this will work) and it's toooooo inconvenient to do code in that way.
it was as if they make this style() meant for text only not for numbers.
Very cool!
🔥🔥
dot is like the pipe operator in R
Don’t know R 😅 but probably!
late to the party, thanks for the comprehensive guide.
Ah it’s still the first week of the update, you‘re early! 😎
Some of these updates are making me think I should actually start paying for Notion. They're way out in the lead when it comes to structured notes.
Oh yes! Paying really only needed though if you want to use it as a team 😇
✅Noted in Docs
🔥
@@mfreihaendigHi, sir.
I never learn any programming languange like javascript or anything else before.
So before I jump to watch this video, should I watch your Notion 1.0 video first? ➡️ th-cam.com/video/8ZGIWY5pNqw/w-d-xo.htmlsi=k_oRImW7HmK6Q1lu
This should have been done earlier. The notion team sometimes are not aware of these obvious needs.
The update? I mean it also takes a lot of resources to keep a software like Notion running and this is a super fundamental change 😅 earlier is always nicer, but I wouldn’t say they dropped the ball here ;)
In my opinion, wrapping up a formula (by defining variables) is a crucial need and is not hard to achieve;)@@mfreihaendig
@mfreihaendig I am trying to add a formula to calculate hours from Date 1 in Table 1 and Date 2 in Table 2. I have read that I need to create a rollup, but, when I add the datebetween formula it doesn't work for a rollup. Is there a way to find the time between a rollup date range?
I have tried this: format(dateBetween(dateEnd(End), dateStart(Start), "hours")) + " hr " + format(dateBetween(dateEnd(End), dateStart(Start), "minutes") % 60) + " min"
ERROR: Argument of type array does not satisfy function dateEnd(). [27,28] Argument of type array does not satisfy function dateStart(). [41,42] Argument of type array does not satisfy function dateEnd(). [93,94]
As mentioned in the other comment, I’d need to see the setup to help you here 💪🏻