How to make your Excel VBA code run 1000 times faster

  Рет қаралды 360,710

Excel Macro Mastery

Excel Macro Mastery

Күн бұрын

Пікірлер: 788
@wmcnabb
@wmcnabb 5 жыл бұрын
Paul, you are on fire of late! Some EXTREMELY useful techniques explained very well. I have always been able to tell the level of a developer by what stage they are at in these types of examples. I will be recommending this video to lots of people.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Hi Wyatt, That's actually a great point you make. It's like the evolution of a VBA developer. The begin using Select and activate and evolve through each stage from there.
@incobart
@incobart 4 жыл бұрын
@@Excelmacromastery hi, actualy I am looking your other video that explains it .. thanks
@prayushijain4087
@prayushijain4087 4 жыл бұрын
Please provide your inputs Check this too kzbin.info
@TheZenytram
@TheZenytram 2 жыл бұрын
that pretty funny, i'm learning vba for the last 3 month, and this is precisely the steps i was taking it. Although i've stopped at the array level, i know that i'm miles away, too crude in the knowledge about the rest. This advanced filter, to me , looks like that i have found a treasure chest hidden somewhere.
@spamdump4459
@spamdump4459 4 жыл бұрын
Saw this video and the next day reworked some macros I wrote for work. Previously if there were more than 20 files you might as well wander down the hall, pour a cup of coffee and when you got back it would be finishing, maybe. In less than a hour of recoding I had it down to 9 seconds! Today I got it under 2 seconds for 70 files.
@luciorlc
@luciorlc 4 жыл бұрын
I thank God because people like you exist.
@tequilacollins
@tequilacollins 5 жыл бұрын
I've been a very advanced VBA programmer for a lot of years, but still learned something new. Thanks.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
That's great to hear Tom.
@prayushijain4087
@prayushijain4087 4 жыл бұрын
Check this too kzbin.info
@PeterrDDark
@PeterrDDark 5 жыл бұрын
This is absolutely amazing. I went from a run time of 6 minutes to 14 seconds! Thank you so much!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Peter!
@christophseyfarth8018
@christophseyfarth8018 4 жыл бұрын
One of the best and most useful Excel Videos found on the entire internet. Well Done and a big THANK YOU.
@supplychainsys
@supplychainsys 4 жыл бұрын
Paul, you are one of the best overall coders I have found. You think out all the critical issues around a successful project - design, operational speed efficiency, code maintenance, user experience and project construction. It would be a joy to have you on or leading any team I have in the future.
@BrendanOD
@BrendanOD 5 жыл бұрын
Instead of setting calculation to automatic at the end, it’s best practice to capture the current calc mode at the beginning. And set it back to that at the end. Manual calc may have already been set in Excel, a macro that turns it back on can be an annoyance.
@aguswidi9316
@aguswidi9316 4 жыл бұрын
Agree with brendan
@esrAsnataS
@esrAsnataS 2 жыл бұрын
As someone who loves Macroing :) everything I do in excel and who is totally self taught with the massive help of google, that was inspiring. One of the most helpful things I have seen. Thank you!!
@zachariahkane6833
@zachariahkane6833 5 жыл бұрын
application.screenupdating = false is a must for every VBA user.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
That's true.
@andrewlockwood6102
@andrewlockwood6102 5 жыл бұрын
@@Excelmacromastery Only caveat is that whilst developing code, if it crashes and doesn't get to turn screen updating back on, you can find yourself stuck and potentially have to kill the program and lose any unsaved code. Sometimes it's prudent to only include the on/off code after you have solidified your code. My 2 cents worth. :-)
@thatguythatdoesstuff7448
@thatguythatdoesstuff7448 5 жыл бұрын
@@andrewlockwood6102 In this case, you can create a macro in your personal.xlsb that turns all of it back on. You then designate that macro as a custom button in your quick access toolbar. Something goes wrong, runtime error or whatever, click the button, everything is turned back on.
@megapro125
@megapro125 4 жыл бұрын
@@andrewlockwood6102 it only makes you unable to interact with the normal excel UI but not with the VBEditor Window. So just quickly write a new macro with "application.screenupdating = true" and everything is working fine again
@phpvbacoder9000
@phpvbacoder9000 3 жыл бұрын
Best practice is always to implement error handling and Set back to defaults there
@rasmusravnsbjergbyriel2846
@rasmusravnsbjergbyriel2846 5 жыл бұрын
I think this may have been THE best VBA advice I have ever seen. Working in a large company everyday, sometimes handling hundredthousands of lines of data, I can't wait to implement these advice in my future work. And maybe even rework some of my existing code.
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Glad you like it.
@nikolaifriendly7977
@nikolaifriendly7977 7 ай бұрын
Let me expres my gratitude in VBA language: shInput.Range("Beginner").Resize (i, 1). Value = PaulOutput (i,1).Value 'Way to Perfection Thank you for your cristal clear lessons !
@martiancocian6301
@martiancocian6301 2 жыл бұрын
I am speechless. This is wonderful stuff. Thank you for sharing. God bless!
@321tryagain
@321tryagain 5 жыл бұрын
This is amazing. I got suggested your video by youtube. Most VBA videos are too simple for me. I had no idea that turning off calculations would give such a drastic improvement. It cut my execution time from 161 seconds to 1.2 seconds
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
That's great to hear:-)
@georhodiumgeo9827
@georhodiumgeo9827 4 жыл бұрын
I have never tried to put the data in an array and then process it. Very clever. People should also know how much faster Excel 2010 was at running VBA code than 13,16 or 365. If you haven’t upgraded stay away. And if you have a lot of code use a VBA decompiler from time to time. Errors will build up in the P-code and you can clear them out. I don’t know why but it can also speed the macros up. Because magic but I swear it’s true. Great video this should be a “watch first” for learning VBA!
@menecany6444
@menecany6444 2 жыл бұрын
and what about excel 2021?
@jeroldjay1711
@jeroldjay1711 5 жыл бұрын
I really wish I had watched this two years ago!! It would have saved me a lot of time learning some of these techniques the hard way!!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
I wish I had watched myself 10 years ago😛
@danteencinas7020
@danteencinas7020 2 жыл бұрын
Wow... Nice... Advanced filters blew my mind! Thank you!
@HuyHuynh-g3b
@HuyHuynh-g3b Жыл бұрын
Hats off to you sir. Big help. Im running a small engineering calculation. but still there are hundreds of sheets need to be duplicated. these tips improve it by a lot.
@eltonm.t.873
@eltonm.t.873 3 жыл бұрын
The advantage of using arrays is that beyond being the second fastest, one could write text files (csv) out of the data collected fom the source sheet, parse to databases, etc . Moreover, one could cancatenate values from different columns, perform math operations between column/rows values, etc, all from the dataset in memory. In a nutshell, one could make a lot of things out of the array data in memory as opposed of using the Advanced Filter method which is fast but you don't have the control of the aquired data from the source sheet. Adv. Filter is fast but only transfers data from one sheet to another as it is, then you'd have to process the dataset again if you wanted to do more things with it. I personally have used the array method for the reasons stated above, unless I just want to filter data.
@pe00100
@pe00100 4 жыл бұрын
I write lots of VBA code and I learned new tricks. I never used the advanced filter before. Thanks for creating this overview.
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Glad it was helpful!
@MyFlopsi
@MyFlopsi 4 жыл бұрын
A big thanks from Germany for this very useful und powerful way to code, people like you make this world better!
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Thanks Philipp
@medasbabu
@medasbabu 2 жыл бұрын
Thanks Paul, Just completed coding to process 2.5 lakhs of records, its taking quite a lot of time, had to split it into 5 sets and run the code. This video provides, clear picture where i can improve my code and speed up the process. Thank you very much...
@plumberski8854
@plumberski8854 4 жыл бұрын
Working on a spreadsheet with 1 million rows (Excel 2016 32 bits). Manual calculation mode. Tested it with 2000 rows and it took about 100 sec. When I ran the 1 million rows, even after 14 hours, it has not finished. Don't know whether it was hanging or needed more time. I will try out some of your tips. About 1/2 of what you have shown is an alien language to me. Ha. Not that well versed in VBA. Many many thanks for this video. You made my day!
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Glad you enjoyed it. Check out my newest video which is a follow up to this one with more optimization techniques kzbin.info/www/bejne/iH_UlWtvgMSVmLc
@atchoum87
@atchoum87 5 жыл бұрын
Hi. i'm in the middle of creating an output sheet with a bunch of copy/paste from different sheets... Most useful youtube recommandation EVER! Thanks for the tips, it'll be very usefull
@tristanc6967
@tristanc6967 3 жыл бұрын
A note on Paul's final comment about sampling these methods on a small set of data first: Some of these methods will only give you gains as you scale up. For example, in a table with 1800 rows, adding the TurnOffStuff and TurnOnStuff functions added 15ms to my run time. Results from a very small sample size *may not be indicative* of performance effects at a larger scale.
@leowanner1228
@leowanner1228 4 жыл бұрын
Great explanation and demonstration of how much of an impact different coding will have on the efficiency in getting the processed results. I am new to VBA coding and I am making my first attempt at writing script for an Excel project. I am attempting to write VBA code to accomplish the task of transferring data from 7 individual Excel Workbooks to combine into 1 Main Excel Workbook file. I only need to transfer 3 columns of data from each of the 7 individual workbooks as follows: From: Team A Excel Workbook, Sheet 1, Columns: D, K and T. To: Main Excel Workbook, Sheet 1, Columns: D, K and T. From: Team B Excel Workbook, Sheet 1, Columns: E, L and U. To: Main Excel Workbook, Sheet 1, Columns: E, L and U. From: Team C Excel Workbook, Sheet 1, Columns: F, M and V. To: Main Excel Workbook, Sheet 1, Columns: F, M and V. From: Team D Excel Workbook, Sheet 1, Columns: G, N and W. To: Main Excel Workbook, Sheet 1, Columns: G, N and W. From: Team E Excel Workbook, Sheet 1, Columns: H, O and X. To: Main Excel Workbook, Sheet 1, Columns: H, O and X. From: Team F Excel Workbook, Sheet 1, Columns: I, P and Y. To: Main Excel Workbook, Sheet 1, Columns: I, P and Y. From: Team G Excel Workbook, Sheet 1, Columns: J, Q and Z. To: Main Excel Workbook, Sheet 1, Columns: J, Q and Z. What is the best way to apply the same code efficiency that you demonstrated in this video to this kind of task?
@brad7914
@brad7914 5 жыл бұрын
Paul this is probably best Excel video I have ever watched - what you have shown is just amazing and something that will benefit me massively - thanks so much for sharing and keep up the great work!!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Brad. Glad you have got so much use from this video.
@paulblackwood1273
@paulblackwood1273 2 жыл бұрын
I really found these tips super easy to use and they allowed me to improve my spreadsheets performance 380x. Reduced run speed from 45 mins to 8 sec! Woohoo. The best one by far was reading the worksheet data into an array and processing it in memory rather than accessing the sheet. These instructions were so clear and easy to follow. Amazing. I even implemented the module timing in my code to target savings.
@Apsis0215
@Apsis0215 Жыл бұрын
Fantastic overview and breakout of the code! I never realized the cell to cell was so slow and traditional coding was so much faster (Arrays). That element collector trick is also very amazing!
@itsdaj
@itsdaj Жыл бұрын
This is the double slit experiment for Excel. Thank you for breaking this down.
@Greenham1988
@Greenham1988 5 жыл бұрын
As the only accountant at my last two jobs that knew VBA, it's extremely refreshing to know others are using VBA at this level. I've always referenced your site, I did not know you had a KZbin channel, I've been on here just going through videos for (Repeating them of course) the last two days. Thank you so much for sharing this knowledge.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
You're welcome. Glad you like them.
@martinargimon730
@martinargimon730 3 жыл бұрын
Thanks for this tutorial. Is a MUST for all 'amateur' programmers like me. Excellent and Thanks once again Regards. Martin ( South Africa)
@mtstans
@mtstans 10 ай бұрын
Working on my nfl model for dfs games. (just a hobbiest) my old version simulated 1 game of the full slate in 181937/1000. After finding this and learning about arrays, my new code does the full slate and sims each game 100000 times in 585010/1000 seconds. Around a 3010X speed improvement. Learned a crap ton from you and have started using gpt as a coding better. I've done in one week what I couldn't do in 5 years. Cheers!
@Excelmacromastery
@Excelmacromastery 10 ай бұрын
Thanks for the feedback. Glad you had such an improvement.
@albertbatfinder5240
@albertbatfinder5240 5 жыл бұрын
Really good. VBA code has an astonishing ability to yield to all sorts of improvements if you just nudge it a bit. But you gotta know where to look. One thing I will say is that you might do yourself a disservice by removing all the scaffolding, which is what you’ve done with the last step. I guarantee 100% that in a job like this, at some point you are going to want to do something a bit special with the records found. Three days after removing the loop, you’re gonna be putting it back in. The loop is the scaffolding. Don’t chuck it out lightly, or it’s Step 1: Optimise. Step 2: Deoptimise.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Albert. Glad you like it. It always depends on the requirements. Some situations the loop is better and for some the Advanced Filter.
@menecany6444
@menecany6444 2 жыл бұрын
you say that it is better to use the loop then? sorry, english is not my native language.. i didnt understand quiet well
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Hi everyone! This video has some great practical techniques to help you speed up your code. Please add any comments below. Thank you.
@8ballWASD
@8ballWASD 4 жыл бұрын
thank you, Mr Paul! I'm going to implement it in my team. I wish you all the best in your career!
@amareshachar4335
@amareshachar4335 4 жыл бұрын
Hello Sir.. I have below code in my file.. it takes about 10 seconds to run.. how can we get it work faster..!? Sub do_it() For r = 7 To 18 Range("K" & r & ":L" & r).Value = Range("I" & r & ":J" & r).Value If Cells(r, "G") "" Then Cells(r, "K") = Cells(r, "G") If Cells(r, "H") "" Then Cells(r, "L") = Cells(r, "H") Next r End Sub
@sonderfall1979
@sonderfall1979 4 жыл бұрын
Hi, I have two questions: 1) I have an Excel simulation where I have 15'000 clients and want to run 10'000 scenario. At the end I'll produce four matrices (15'000 times 10'000 times 4). It takes about 36 minutes for 1000 scenarios and I already worked with arrays (as good as I could with my limited knowledge). Do you think it is possible to store up to 0.6 billion data records in Excel or do you have a tip what to do because Excel almost breaks down ;-). Should I "outsource" data into CSV-spreadsheets instead? 2) Do you know a good random number generator in VBA. I tried to use the "built in" random number generator but somehow it didn't work with my array code.
@plumberski8854
@plumberski8854 4 жыл бұрын
Read that Excel 2016 32 bits has a file size problem running VBA when it is greater than 50 Mb. True? If so, why? 50 Mb is not that big.
@prayushijain4087
@prayushijain4087 4 жыл бұрын
Very nice video... Please provide your inputs kzbin.info
@IanLockley
@IanLockley 5 жыл бұрын
Paul, you've blown me away! I'll be using these techniques to vastly improve the speed of my current Excel projects. Some of my projects take 10 to 15 minutes. This is bonkers! I've been writing the most inefficient code possible.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Ian. Don't worry we've all been there. The Copy and Paste method is so common place in VBA web examples that when I discovered assign I was sure it couldn't possibly be better than Copy and Paste.
@manjunathmahamuni4120
@manjunathmahamuni4120 2 жыл бұрын
wow !! The Awesome techniques I got today from your channel, Thank you very much for this great knowledge !!
@ricomajestic
@ricomajestic Жыл бұрын
This guy definitely knows his stuff! I am impressed.
@Lutfitince
@Lutfitince 5 жыл бұрын
AWESOME!!! That's the point of macros - speed! I am happy there are ppl like you
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Glad to help
@tonysimoes9121
@tonysimoes9121 5 жыл бұрын
That was impressive. Just turning off the calculations and screen updates saves a considerable amount of time.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Tony
@sacha7407
@sacha7407 5 жыл бұрын
I program in VBA for over 10 years and I have learned again some things. Thank for this video very clear… even for a french with poor english
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Glad you like it Sacha.
@CharleyGR
@CharleyGR 4 жыл бұрын
Thanks a lot mate! I watched this video and two days later I got to apply those tips to a code that was taking around 5s to run. After making the changes it runs instantaneously which is how it was supposed to be. Keep up the good work!
@EduardoRibeiroEdu
@EduardoRibeiroEdu 3 жыл бұрын
Man, this is the BEST VIDEO ON VBA in youtube! Thanks a lot.
@przemekpolanowski8531
@przemekpolanowski8531 2 жыл бұрын
Wow! What an ending! AdvancedFilter! This is tutorial is breathless action movie! Thank You Sir. Lord.
@Excelmacromastery
@Excelmacromastery 2 жыл бұрын
You're welcome.
@jenshaglof8180
@jenshaglof8180 4 жыл бұрын
Changing from reading directly from the sheet to loading the range into an array sped the macro up from 1 min 15 sec to only 1 second. Couldn't almost believe it! Amazing! :D
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Nice work!
@ZEUSAIMIGHTY
@ZEUSAIMIGHTY 5 жыл бұрын
Wow, I literally ran my VBA exactly how you said beginners do but that's only because that's how the record macro feature told me to. Very helpful!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Nick. The macro recorder code is very different than real-world code. It leads to a lot of confusion.
@MarkCBB86
@MarkCBB86 5 жыл бұрын
Probably one of the best VBA help videos I have seen, You explained each part very clearly without over speaking, Thank you. Things I learned from the video (MicroTimer, Resize, populating an Array straight from a range). I use assignment often, but looking forward to using it with Resize now. Favorite part of the Video is jumping to just using Advanced Filter - Sometimes we over code for things that there is already a built-in function for. Thanks again!!!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Mark. That is high praise indeed. I'm glad you got so much from the video.
@theexcelproject6973
@theexcelproject6973 2 жыл бұрын
This is one of the most genuinely helpful contents I have ever come across.
@johnwatkins39
@johnwatkins39 5 жыл бұрын
OMG this is an awesome video. All the stuff I do at my work will be so much faster.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks John.
@garagistes1
@garagistes1 5 жыл бұрын
Assignment - *jaw drops and thinks about all the good times that i've wasted copying and pasting*
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
😅😅
@dst47
@dst47 5 жыл бұрын
Much appreciated. My excel calculation time has dropped from 20 mins to 5mins. It saved lot of time of my life. Thank you so much.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Glad to help Deepak
@jeremybuchanan4759
@jeremybuchanan4759 Жыл бұрын
Thanks for this - I look forward to applying advance filter on current project.
@wilgo58
@wilgo58 5 жыл бұрын
Thank you sooo much. You have taken my code and shortened it's run time by quite a bit :) I still need to learn and understand the Advanced Filter a little better, but you have helped improve my workload significantly. I truly appreciate it :)
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Zach. Glad to help.
@catones2868
@catones2868 3 жыл бұрын
Hi, I'm a novice excel macro user and I find this very interesting. HOWEVER, I'm stumbling into problems trying to apply your technique which I think is very useful in learning how to optimize use of macros thru VBA. My question surrounds the microtimer formula you applied to test the speed of the macro. I want to do something similar for a macro I am working on where I format a query dump which 1) adds standard header and footer data; 2) renames certain column headers from ugly program field names to field names that are in english (e.g. instead of a field named ''wk_tm_dt" rename it to "date", etc. etc); 3) removes irrelevant columns with no meaningful data, 4) formats the date column to be read as the "day of the week", mm/dd/yyyy", & 5) formats number columns to x,xxx.xx format. The macro takes a significant amount of time and I see opportunites to speed up the macro based on your interesting points noted. For learning purposes, I want to replicate what you've done in order to measure the speed improvement. For my macro code, I added the start time at the beginning of my macro as how you wrote it (Dim dTime As Double *space* dTime = MicroTimer) & at the end of my macro code (Dbug.Print "Time is" & (MicroTimer - dTime) * 1000. However when I run my query, in VBA, it indicates "Time is= 0" What did I do incorrectly and how do I get my macro to show the time it took to run my macro like how you did? My macro takes around 10 seconds and I want to get that time down. Thanks for sharing the possibilities. All these years and all these wasted hours I could have saved had I learned your mode of thinking sooner.
@isaacmartinez3281
@isaacmartinez3281 Жыл бұрын
Did you ever find the answer to this? Same thing is happening with me
@meiwong5615
@meiwong5615 4 жыл бұрын
Best VBA tutorials I’ve seen so far!
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Thanks for your comment Mei
@anilthakkar2372
@anilthakkar2372 2 жыл бұрын
You are just Great Sir with immense knowledge
@orgilmas
@orgilmas 3 жыл бұрын
I feel happy that I use these techniques all the time when vba calculation time matters on some projects.
@pezad4187
@pezad4187 2 жыл бұрын
Hello Paul, you write data from an array to cells cell-for-cell. This is the slowest way! Use the same way like reading data, the whole range. You do not need a loop. (11:25)
@wintert6568
@wintert6568 5 жыл бұрын
Great stuff! I use some of those techniques myself, the way you explained everything was definitely on point. My only critique would be to have the code comparisons side by side instead of flat out rewriting so viewers can see the difference if they pause the video. Might be helpful to some.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Winter. Glad you enjoyed it.
@jeffchen6556
@jeffchen6556 Жыл бұрын
You are the best VBA teacher of me, many thanks
@Mraungnaingthu1
@Mraungnaingthu1 2 жыл бұрын
Your live explanation is precious for me.
@trueindian2108
@trueindian2108 2 жыл бұрын
These are very useful videos for me. I still want to know more about excel vba array programming.
@shohanmohammadwasiuzzaman1111
@shohanmohammadwasiuzzaman1111 4 жыл бұрын
Clearly, the guidelines have improved the speed of my code... excellent & simple techniques... thanks
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
You're welcome Shohan
@freeliberalminds
@freeliberalminds 2 жыл бұрын
Great VBA helpful video tips from you sir Paul.
@kolinsin23
@kolinsin23 3 жыл бұрын
Didn't comment first time watching this, advanced filter method is my "go-to" for any code that needs a copy paste. On average, has mitigated 96% waste generation (time) based on original process. Thanks for sharing :)
@tocobern
@tocobern 4 жыл бұрын
Brilliant, well explained. I've not used vba for years and I was helping someone out with something urgent for their work. I got what they needed sorted out but my process was running so slow. They are giving a demonstration today but it's been annoying me that it's taking around 2.30mins to run through about a thousand records. Now I see its because I am making all these select cut paste onto different worksheets. I will use some of the techniques you so brilliantly explained. So I had to subscribe. Thanks again.
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Thanks for the feedback Tony.
@linaseptiani2994
@linaseptiani2994 2 жыл бұрын
This is really cool video for me as a VBA beginner
@yoryopower2908
@yoryopower2908 3 жыл бұрын
Thanks. Now my code is running faster.
@Excelmacromastery
@Excelmacromastery 3 жыл бұрын
Glad to hear.
@pddhavale
@pddhavale 5 жыл бұрын
Great work and Superb method to explain in fluent and descent manner,Love you .Salute for attitude and making it available for all.Thanks
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
thanks very much Pradeep
@dimonovych
@dimonovych 5 жыл бұрын
nothing new for me, but i like how consistently you explain) good job, definitely.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Dimon.
@guybloomfield5820
@guybloomfield5820 4 жыл бұрын
The array instead of range tip! It's so obvious but I had never thought of it. Thank you sir!
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Glad to help
@alphonsoba8171
@alphonsoba8171 5 жыл бұрын
As usual, thanks Paul. While I use the web a lot for examples, you are the only one I keep track of. Love your stuff.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Appreciate the feedback Alphonso.
@jeromecordel5908
@jeromecordel5908 5 жыл бұрын
A major work ! Very helpful and easy to integrate in all VBA code. Thank you so much
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
No problem Jerome.
@MalinaC
@MalinaC 4 жыл бұрын
I love this advanced filter trick! Thanks for sharing!
@Excelmacromastery
@Excelmacromastery 3 жыл бұрын
Glad you liked it!
@iqbaluk
@iqbaluk 4 жыл бұрын
Loved this Advanced filter
@ph5i5
@ph5i5 4 жыл бұрын
Great video. Even if intuitively, in the given scenario, filtering is THE WAY to go. if you faced this problem without knowing how to use VBA, you'd wanna use a filter (simple or advanced - up to the user), so why would you want VBA to do it the hard way and loop through every row? This is not a question to you, Paul, but to anyone who would want to code this type of scenario in any way other than: 1. simple filter, 2. advanced filter or 3. array (yes, i know this involves looping, but looping through arrays is WAY FASTER than cells). Still, i can believe there are people out there who would loop through cells, and i also agree, that there is a lot of unnecessary usage of 'Activate' and 'Select'. So thanks once again for explaining this very important topic in a concise and easy to follow video. I'm not a VBA expert by any stretch of imagination, but i have been using it for a while, and have seen many websites/tutorials/videos and i have to say, yours are definitely among the best :)
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Thanks - Glad you liked it.
@SimoneGatta
@SimoneGatta 4 жыл бұрын
In my experience I think the fastest way to copy a data table in from a sheet is using a filter is ADO recordset toghether with the CopyFromRecordset command. You can filter, order a table and perhaps you can do join query building a proper connection data source string...
@shabustinkslol
@shabustinkslol 5 жыл бұрын
Wow, one of the best VBA videos I've ever seen. Very helpful and everything explained very straight forward! I like that I wouldn't necessarily use everything, but the step by step way you explained each thing you did makes it easy to apply where it makes the most sense. Well done!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Matthew
@karenjoy511
@karenjoy511 10 ай бұрын
I've used arrays extensively, but haven't fiddled with Advanced Filter. This video has me wondering where I can change my code to use this cool feature!
@NiteLynr
@NiteLynr 3 жыл бұрын
Wishing I'd another day or two off on furlough to binge-watch your vids but I'm up for work in 6 hours. Just wanted to say that most of us would have stopped when we got the report running in 1.5 secs...the rest is just arcane wizardry and I have a feeling that I'll be reworking a LOT of my older code in the next week or two!
@Excelmacromastery
@Excelmacromastery 3 жыл бұрын
Thanks. Glad you liked it.
@Impedancenetwork
@Impedancenetwork 4 жыл бұрын
Holy shit! That is a significant time saving. Why didn't I watch this video years ago?
@grandpascryptothoughts651
@grandpascryptothoughts651 5 жыл бұрын
What a huge smart education. You wake me up for VBA.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Glad to help Andres
@MrLbott
@MrLbott 5 жыл бұрын
Thoroughly enjoyed this video.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks Simon
@onurtunc9468
@onurtunc9468 2 жыл бұрын
Paul, you are always great teacher, i spent lots of times for copy and pasta data with criteria before but now this is amazing. Awesome. Thank you man.
@jeffnixon4868
@jeffnixon4868 5 жыл бұрын
Beautifully done, thank you! One suggestion: best to trap errors to turn stuff back on, otherwise can be an unpleasant surprise. Thanks again!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
That's true Jeff. When the code is live you definitely need that.
@giacominoveltri4188
@giacominoveltri4188 5 жыл бұрын
I was aware of some of the tricks, but not really aware of the really big ones. Thank you! Well done.
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
You're welcome.
@uberdonkey9721
@uberdonkey9721 3 жыл бұрын
Beautiful. Most code I write is one off to alter 27 identical spreadsheets (businesses) but there is a big data filter sub I have which I use alot but is slow. I can apply all these techniques. Thankyou so much.
@Excelmacromastery
@Excelmacromastery 3 жыл бұрын
You're welcome.
@andrewbarron6374
@andrewbarron6374 5 жыл бұрын
Outstanding! I have been doing it the slow way for years.
@gestionsigdata
@gestionsigdata 6 ай бұрын
Perfect. Excellent. Thanks a lot to take the time to teach us how to become our codes faster. Greetings from Venezuela. New Follower.
@goombakiwi
@goombakiwi 5 жыл бұрын
I typically try to use a "sort" to group my search data then use "find" to identify the first row then a second find (xl previous) to identify the last row. With these two location parameters I can then assign value between the first row and last; that my results are located in. I know this is significantly faster than trying to loop through each available value. I haven't considered timing it compared to using an array.
@vaakdemandante8772
@vaakdemandante8772 Жыл бұрын
it may be what the advance filter does internally under the hood - it would be interesting to actually see the timing comparison between the advanced filter and your method to be sure which one is really faster
@yogeshkar
@yogeshkar 5 жыл бұрын
Wow... Something everyone should know if you are using VBA
@JohnOvens
@JohnOvens 5 жыл бұрын
Hi Paul, this is absolutely fantastic - I have watched it several times and made copious notes. I hope to be able to implement it in my personal stock recorder program John
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Hi John, Great to hear from you as always. Thanks for the feedback. I will be releasing plenty of new videos in the coming weeks so key an eye out for them. Regards Paul
@大同胖皮猴
@大同胖皮猴 4 жыл бұрын
Here's a fan from Taiwan!! Thanks for this useful video, I learned a lot.
@prakashsrinivasan7840
@prakashsrinivasan7840 2 жыл бұрын
Incredible l know advanced filter but don't know that is fastest of all and many people don't know👍👍👍🙂🙂
@ronaldgerard7778
@ronaldgerard7778 5 жыл бұрын
I knew some of them, but not advancedfilter 😲, simply amazing, thx for sharing this!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Glad to share Ronald.
@iexmanoj5574
@iexmanoj5574 3 жыл бұрын
Extremely useful techniques and Great video...can you please also show us how to make slicers faster.
@chandaatanu
@chandaatanu 3 жыл бұрын
Excellent tutorial mate. Loved it 👍
@Excelmacromastery
@Excelmacromastery 3 жыл бұрын
Glad you liked it
@jennydrumm7223
@jennydrumm7223 5 жыл бұрын
This is my first time seeing one of your videos and I'm impressed! Your explanation made complete sense, at least while I was watching and listening to you. I'm going to have to watch it a couple more times to get it to stay in my head, LOL! But your directions are clear, pretty easy to understand and the visuals going right along with your narration is VERY helpful to me! Thanks!
@Excelmacromastery
@Excelmacromastery 5 жыл бұрын
Thanks for the feedback Jenny. I'm glad you got so much value from the video.
@TheSybolt
@TheSybolt 2 жыл бұрын
Great stuff Paul, thanks a lot for this video.
@Osgoodification
@Osgoodification 4 жыл бұрын
Nice video, I only wish it existed 10 years ago. It took me years to figure these all out by myself.
@Excelmacromastery
@Excelmacromastery 4 жыл бұрын
Glad you liked it.
5 Things I wish I knew When I started using Excel VBA
12:45
Excel Macro Mastery
Рет қаралды 337 М.
How to Design and Code an Excel VBA Application Like a Pro
42:27
Excel Macro Mastery
Рет қаралды 215 М.
OYUNCAK MİKROFON İLE TRAFİK LAMBASINI DEĞİŞTİRDİ 😱
00:17
Melih Taşçı
Рет қаралды 9 МЛН
отомстил?
00:56
История одного вокалиста
Рет қаралды 6 МЛН
I Made this VBA Code 2,880,952% faster
12:21
Excel Macro Mastery
Рет қаралды 26 М.
VBA Advanced Filter - The FASTEST way to Copy and Filter Data
18:33
Excel Macro Mastery
Рет қаралды 281 М.
How to use AUTOFILTER method to Filter and copy data in Excel VBA
11:53
How To Master Arrays In Excel VBA + FREE MACROS & CHEAT SHEET
29:09
Excel For Freelancers
Рет қаралды 8 М.
How to get the Last Row in VBA(The Right Way!)
15:41
Excel Macro Mastery
Рет қаралды 159 М.
5 Excel Secrets You'll Be Embarrassed You Didn't Know
17:32
Excel Campus - Jon
Рет қаралды 199 М.
Excel LAMBDA - HOW & WHEN you Should use it
16:02
Leila Gharani
Рет қаралды 438 М.
EASILY Make an Automated Data Entry Form in Excel
14:52
Kenji Explains
Рет қаралды 624 М.
Create an Excel VBA Application Like a Pro
42:21
Excel Macro Mastery
Рет қаралды 38 М.
OYUNCAK MİKROFON İLE TRAFİK LAMBASINI DEĞİŞTİRDİ 😱
00:17
Melih Taşçı
Рет қаралды 9 МЛН