About Me

Me and my avatar

Me and my avatar

Its kinda funny or ironic I guess. I can talk for hours about my work, VBA, and Access, but when it comes to jotting down a few words about myself I get all shy, and start thinking about going do fridge looking for food, or checking my mail or…

Anyways, here goes, in staccato mode to keep the urge of doing other stuff down:

Real Name: Anders Ebro Christensen

Online Name: TheSmileyCoder (Well if you hadn’t figured this out by now….go home..)

I am 32 years old and formally I am an engineer specialized in Micro- and Nano-technology, and took my masters degree in 2006. I have since then been working first with railway safety (go figure) but have since 2008 been working full-time as a Access developer.


42 comments on “About Me
  1. Dennis says:

    Love your tutorials on the treeview control. Yours is the best help I have found. I am working on a treeview that loads icons from the imagelist control but I am having a hard time. It appears that your tutorial #6 is the answer to my problem.

    Will you be making it available for download? If so can you email me a copy?

    I would greatly appreciate it.


    • TheSmileyCoder says:

      I intend to make a blog post with download for part 6 as well. I shall try to get it done as soon as possible. Thank you for your feedback.

      • Dennis says:

        I have a treeview form based on “strCoreSQL” in your code. One of the fields in this source is a field callled “NodeIcon”. The value in this field matches the names used in my image list “ImageList1”.

        What I would like to do is display the icon in the treeview based on the image value in the “NodeIcon” field. The “NodeIcon” field would never be empty.

        • TheSmileyCoder says:

          Hi Dennis
          I have a part 4,5 and 6 (videos) which I have not included here on my blog (I kinda ran a bit out of energy when kid nr 3 was born. Hopefully I will get some more soon 🙂 )
          Anyway, have you tried looking at part 4, which involves icons? You can see the link below:
          Treeviews in MS Access, Now with Icons, Part 4

          If you have any further questions after watching the video (or have already watched the video) please let me know.

      • Michael says:

        Hi. I’ve been watching your videos on building treeviews and I have to say they are fantastic. Unfortunately I seem to be running into problems and having searched everywhere on the web (inc utter access) I’m still stuck and don’t know where to turn.

        • TheSmileyCoder says:

          Hi Michael
          Glad to hear you like my videos. Wish I could find time to make some more.

          I found your post on Utteraccess and have replied there.

  2. jpashley says:

    Great videos!
    Do you intend to address the subject of deleting nodes to complete the series?

    • TheSmileyCoder says:

      Hi jpashley
      To be honest I had not considered that. Thank you for the feedback. I might make a video regarding that issue, but to be honest I am swamped at the moment.

  3. Alan says:

    RE: Crash report tool
    Emailing may not work with the security features at gmail nor with MsOutlook if it isn’t set up. Does using an ftp protocol for file transmission to your website make more sense? If so can you provide some code. Alan

    • TheSmileyCoder says:

      Hi Alan
      I have not had any trouble using the crash reporter myself so far, with either outlook or gmail. But its true, I suppose that if your workplace is more tightly locked down, that you might need to setup something first.

      I have not had any issues like that, so I don’t really have any experience to share. I haven’t tried using FTP for submitting anything through VPN, so I can’t really assist there either. I imagine you again might run into the same issues regarding security. Sorry I could not be more helpful.

  4. Johan says:


    I recently started my first project in Access VBA. I have been a developer for a longtime but somehow never ended up with Access.

    Thank you so much for your Treeview tutorials. They were extremely helpful, and got me up to speed in no time. Thank you for sharing! 🙂

  5. Anita says:

    Thank you for sharing your knowledge. I’m a seasoned Access developer (Danish too) and I used to contribute quite a lot to various Access forums a number of years ago. Then it appeared to die out a little. Today I spent a little time surfing for Access stuff and was delighted to come across quite a number of excellent resources – like yours.

  6. J.Javier says:

    Hello “smiley” Anders, just a quick note to say THANKS!!
    The teaching is simply beautiful!!
    And the execution (presentation) brilliant!!
    Even nicer the will/time to share it all. I have done some programing (in very small letters) and never be able to really grasp the TreeView … “thing”, (trying to understand something that was no there?) until I have seen your series…
    I would/could keep going saying how impress and thankful I’m with the clarity of every 6 videos, thanks for that all time you dedicate. Really!!

    … simply impress and thankful.

    A very big CongraThankfullation (Spanglish) from Pamplona, Spain.
    (hope you understand my rusty English)

    • TheSmileyCoder says:

      Wow, thank you very much for those kind words. I know my blog has been a bit quiet for while, mostly for lack of time, I have several ideas I would like to get down to paper (well digital), and feedback like yours is what keeps me motivated to share more. Thank you.

  7. Brian says:

    Under what license is code posted on this site released as?

    • TheSmileyCoder says:

      Hi Brian
      The code on my site is licensed as Creative Commons 3.0 License. In short this means you may use, copy and remix the code as you see fit. You may even include it in products you sell, without paying me a dime. The condition is that you include the credit notice, saying that the code was developed by me.

      For more information on the creative commons license:

  8. ghasbun says:

    Hi Anders:

    I watched all your videos. I used them to help me build a treeview application in Access. I cannot say enough to thank you. I knew nothing of treeviews before and after following your videos (very carefully and precisely), I became comfortable with them and that is than’s to you.

    I wrote your video comments in my program as I was writing the code. They will help one day for future maintenace by others.

    I want to ask you if you happen to know how to create a report from a treeview, specially if the user selected only some nodes. How would you do this report?

    Thank you for all your help
    Jorge Hasbun

  9. Dave Berg says:

    Anders – I met you at the Access Conference in Oregon and I would like to hire you for a few hours. I could really use your algorithm for shrinking picture sizes in the upload process. Do you hire out for small projects?

  10. Peter says:

    HI Anders,

    I came across a post of yours concerning the gocanvas.com API – one of the very, very few on the ‘net so I’m hoping you can point me in the right direction. While strong on Access development and VBA, I just have a superficial knowledge of .net and little experience with APIs and webservices. I don’t know if it existed at the time, but they do have a webservice API now.

    Anyway, I have a lot of noobie questions concerning the feasibility of integrating our Access databases with Canvas forms using the webservice.

    Do you know of a tutorial somewhere on using a webservice with VBA to integrate with Access or SQL Server?



    • TheSmileyCoder says:

      Hi Peter
      I’m sorry I don’t know of any tutorial for Canvas. I did play around with Canvas for a while, and managed to get a proof-of-concept going on how to download from the canvas server, using their API, but I never really took it beyond that as management decided otherwise.

      So I might be able to help a bit (Quite busy at the moment) if you have specific questions, go ahead and mail me.

  11. Neil Watson says:

    Hi Anders,

    Thank you for sharing your knowledge. I found your videos on the Treeview control a great inspiration and hope to incorporate them in my current project. You videos are very clear and thorough.

    Have you used the treeview control to navigate through forms. I have previously used list boxes linked to related linked list boxes to navigate through forms, but treeview seems a much more intuitive way of navigating.

    i hope to use the treeview control as the means to navigate an application including opening forms, records and linked PDF documents. I would welcome an feedback you might have on this.

    Thank you

    • TheSmileyCoder says:

      Hi Neil
      Yes, the treeview can be quite good for that. A technique I have commonly used is to incorporate the type of item in the key for the treeview e.g.
      So that way, I can parse the key value, to understand what I need to show. Say you have a subform on the same form as the treeview, you can actually “swap” out the subform, by changing the source object. (Aircode below)
      If nodeType=Comment then
      Me.subformname.form.Recordsource=”Select * from tblComment where CommentID=” & nodeID
      End if

      I hope that helps. Otherwise just give a go and drop me an email when you get stuck.

  12. Priyanka Chauhan says:

    Hello Anders ,

    I’ve been following your blog for quite some time now, and I love your content and the lessons you share with your readers. Your blog is very informative and engaging. I would like to tell you that I also like to share my ideas on “Access” with people around and feel your blog is the perfect place to deliver it. I will not only attract visitors but also help them get the informative stuff on the subject.

    So it’s my humble request you to kindly grant me the permission so that I can also post some really informative and fresh content on your blog.

    Best Regards
    Priyanka Chauhan

    • TheSmileyCoder says:

      Hi Priyanka Chauhan
      Thank you for your interest.
      I would be happy to host some of your content. @Present I won’t however just give blanket access to post stuff, as there is simply way to many spammers out there. So please feel free to mail me a write up (Include a bio if you want), and I will post it, full credit given of course. Once you have “proven” yourself with a few articles, I could grant you access to write directly on the blog.

  13. MontanaMan says:

    Anders, I’ve been creating Access dbs since June 1993 and I have to say that your treeview tutorials are astonishingly very, very good—and I’ve been using the treeview control for almost 20 years!

  14. Georg says:

    Hello Anders,
    Your TreeView is a cool app! Enables me to organize stuff in Access in the most natural way. I tested “Part 6” version and it works fine with my Access 2007.

    Is a version with the Drag&Drop capability commercialy available, where can I buy it?
    If not commercialized, then do you provide download on a Donation/As-Is basis?
    Best regards, Georg

    • TheSmileyCoder says:

      I don’t currently have any sample where that feature is coded in. Its not terribly difficult, but truth be told, its often situation specific, and has to be coded/matched to what your are trying to do.

      I do have something in the works, but when it will ready I really can’t tell.

  15. Khaled says:

    I am Khaled from Egypt
    I followed your video to explain treeview
    Please correct this code in my project
    Public Sub loadAccTree()
    Dim tv As MSComctlLib.TreeView
    Set tv = Forms(“AccTree”).CtrlTreeAcc.Object
    Dim nodRoot As MSComctlLib.Node
    Dim rsRoot As DAO.Recordset
    Dim sFind As String
    Set rsRoot = CurrentDb.OpenRecordset(“SELECT * FROM AccountType ORDER BY TypeID”, dbOpenDynaset)
    Dim nodAcc As MSComctlLib.Node
    Dim rsAcc As DAO.Recordset
    Set rsAcc = CurrentDb.OpenRecordset(“SELECT * FROM Accounts”, dbOpenDynaset)
    Do While Not rsRoot.EOF
    Set nodRoot = tv.Nodes.Add(, , “TypeID” & rsRoot!TypeID & “”, rsRoot!AccType)
    sFind = “TypeID=” & rsRoot!TypeID
    rsRoot.FindFirst sFind
    Do While Not rsAcc.NoMatch
    Set nodAcc = tv.Nodes.Add(rsRoot!TypeID, tvwChild, “IDType” & rsRoot!AccountType!TypeID & “”, rsAcc!N_Account)
    rsAcc.FindNext sFind
    End Sub
    i have relationshep between 2 tables “AccountType with PK TypeID” and “Accounts with FK IDType”

    Please give me your email to send you my project to test it

  16. Marcus Vinicius Salles says:

    Hi Anders. I don’t now if was you that posted a question in “UtterAccess Forums” about QAT Button visibility. The solution is to change documentControls to sharedControls and then everything works fine (getVisible).

    • TheSmileyCoder says:

      Excellent! Thank you very much for taken the time to come “over here” to my blog and inform me. I tested it immediately and it works.

  17. cjeukens2013 says:


    Thank you very much for the explanation on Treeview. Following part 6 I implemented drag-and-drop with help of https://support.microsoft.com/en-us/kb/209898.

    I recognize your story: starting as a user and unleashed along the way. Now I want more.

    Q: Can you help with drag-and-drop between controls?

    I have populated the Treeview with a product structure. Each branch carries characteristics of the products (leaves) attached to that branch.

    Now when I have new products I want to drag them to a branch and invoke a dialog that asks the user ” do you want to inherit all branch characterics to this product?”.

    Let’s say: I have a subform with the records of not-yet-attached products, and I want to be able to drag record by record to the Treeview.

    Is this possible in Access (2013).


    • TheSmileyCoder says:

      I have previously implemented drag-n-drop in the following scenarios:
      * Within a single treeview
      * From listview->Treeview and vice versa
      * From one treeview to another treeview
      * From File-Explorer to treeview/listview

      The difficult part as I read your question depends on the initiation point. I’ve found it difficult to initiate an official drag-n-drop from an Access control, such as a textbox.

      So what is your initiating point for the drag?

  18. cjeukens2013 says:


    I guess the option:
    * From listview->Treeview and vice versa
    applies best to my situation.

    I will populate the listview with the records from a table containing non-assigned-products.
    By dragging an item from the listview and dropping it onto a branch in my product-tree in the treeview, I will assign the branch characteristics to the non-assigned-product.

    Could you share the demo?


    • TheSmileyCoder says:

      Sadly I don’t have a demo “on the shelf”, its all part of projects. I might get the chance to work on something this weekend, as I will have some travelling time going to an from the german Access konference.

  19. John says:


    Great Treeview tutorials!

    Is it possible for the summary row to be below the details? The default summary row is above the details.


  20. Khaled says:

    Hi ..i follow you .you are grade teacher.
    But l have idea . I won’t make search text box to search from sub form I do it .
    But I won’t mark and highlight the letter in sub form
    Thank you for help
    Please sorry me .i not good English thank you

  21. Renato says:

    Ciao, your Tree System is very nice, thank you from Italy

4 Pings/Trackbacks for "About Me"

Leave a Reply

Your email address will not be published. Required fields are marked *


This site uses Akismet to reduce spam. Learn how your comment data is processed.