After seeing Andrew’s simple excel based check-list I got this idea of preparing a simple To-Do list application using excel.
Since most of us use Excel on day to day basis, why not use it as a productivity application as well by keeping track of all the things we must do (TO DO List). When we have finished a task, we can mark it as “Done” in the sheet and it will be removed. See below:

Click here to download the Simple To Do List application in Excel
How to use Simple To do List?
- Open the downloaded workbook. It may ask for enabling macros, please say “Yes”
- Start entering your to do tasks in the table. See below:
- Now, leave the spreadsheet here and go get some of the things done!
- When you return mark the items you have finished as done. See below:
- Finally once a day or so, click on the “Remove done items” button. This will remove all the to do list entries with “Done” as the status. Please be aware that once you remove the items you can never get them back. See below:
- That is all, this spreadsheet to do list is soo simple that it leaves you tons of time to actually get some of the things done.
How the Simple To do List works?
The key functionality of this excel based to do list lies in the “remove done items” button. When you click it a VBA macro runs in the background and checks tabular area where you have entered to do items for anything with “done” status. If it finds any, the code will remove those items and move up the remaining ones accordingly. Click here to see the VBA Macro code.
Download the to do list excel workbook and become productive
More free excel downloads:
73 beautiful chart templates – free and easy to use
Become a conditional formatting rock star, download these cool examples

















6 Responses to “Make VBA String Comparisons Case In-sensitive [Quick Tip]”
Another way to test if Target.Value equal a string constant without regard to letter casing is to use the StrCmp function...
If StrComp("yes", Target.Value, vbTextCompare) = 0 Then
' Do something
End If
That's a cool way to compare. i just converted my values to strings and used the above code to compare. worked nicely
Thanks!
In case that option just needs to be used for a single comparison, you could use
If InStr(1, "yes", Target.Value, vbTextCompare) Then
'do something
End If
as well.
Nice tip, thanks! I never even thought to think there might be an easier way.
Regarding Chronology of VB in general, the Option Compare pragma appears at the very beginning of VB, way before classes and objects arrive (with VB6 - around 2000).
Today StrComp() and InStr() function offers a more local way to compare, fully object, thus more consistent with object programming (even if VB is still interpreted).
My only question here is : "what if you want to binary compare locally with re-entering functions or concurrency (with events) ?". This will lead to a real nightmare and probably a big nasty mess to debug.
By the way, congrats for you Millions/month visits 🙂
This is nice article.
I used these examples to help my understanding. Even Instr is similar to Find but it can be case sensitive and also case insensitive.
Hope the examples below help.
Public Sub CaseSensitive2()
If InStr(1, "Look in this string", "look", vbBinaryCompare) = 0 Then
MsgBox "woops, no match"
Else
MsgBox "at least one match"
End If
End Sub
Public Sub CaseSensitive()
If InStr("Look in this string", "look") = 0 Then
MsgBox "woops, no match"
Else
MsgBox "at least one match"
End If
End Sub
Public Sub NotCaseSensitive()
'doing alot of case insensitive searching and whatnot, you can put Option Compare Text
If InStr(1, "Look in this string", "look", vbTextCompare) = 0 Then
MsgBox "woops, no match"
Else
MsgBox "at least one match"
End If
End Sub