Solved

Pointers to creating new Excel Windows Task Panes via VBA automation

Posted on 2013-05-30
5
1,242 Views
Last Modified: 2016-09-14
I am considering using customised task panes in place of UserForms, in an Excel project.

I've heard that windows task panes can be customised from scratch and can provide comparable dynamic properties to vba userForms, and that so?

I have several dynamic userForms, which are best used modeless. Within the workbook, some are used, individually, in conjunction with more than one worksheet

REASONS for me considering Task Panes - or are they non-reasons??? ========>

-- It would be helpful to enable the modeless dynamic forms could be 'docked' to the main excel window, so the User does not 'lose' them, behind the main window.

-- I'm under the impression that task panes give a more 'professional' appearance to a project.

-- I have other Userforms to create, so a migration to task panes (if a good idea) would be timely.

-- I've read somewhere that it is possible to convert UserForm code to Task Pane code. In practice is this a genuine benefit?        ===================================|

Can you give me pointers to set me gathering materials?
What are the main issues for me at this 'thinking' stage?

Thanks
Kelvin
0
Comment
Question by:Kelvin4
  • 2
  • 2
5 Comments
 
LVL 17

Expert Comment

by:andrewssd3
ID: 39210025
I don't believe that task panes can be created using VBA.  To create them you need to use Visual Studio Tools for Office (VSTO) with a 'proper' programming language like C# or Visual Basic .NET. There is lots of info around about doing this, including http://blogs.msdn.com/b/gabhan_berry/archive/2008/08/13/custom-task-panes.aspx
0
 

Author Comment

by:Kelvin4
ID: 39210064
andrew-- Thanks for the point about VBA, which I has seen claimed to be useful.  

The blog:    http://blogs.msdn.com/b/gabhan_berry/archive/2008/08/13/custom-task-panes.aspx claims VSTO is not required.  

However, if I were to use VSTO, am I right in thinking that I'd be able to maintain most of my project in VBA, and just use VB.Net for the task panes?

Kelvin
0
 
LVL 17

Accepted Solution

by:
andrewssd3 earned 500 total points
ID: 39210078
Yes, that blog shows how to create them natively, but you still need a non-VBA environment to create the panes.  You could create the task pane outside VBA in a COM-visible add-in then call that from VBA.  I have not tried this but I imagine with some tweaking you could get it working.
0
 

Author Closing Comment

by:Kelvin4
ID: 39210552
andrew.. thank you for a quick and clear answer. This need not be at the top of my list!
Kelvin
0
 

Expert Comment

by:TuanKTCDCN
ID: 41799226
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This Article briefly covers methods of calculating the NPV and IRR variants in Excel as well as the limitations in calculating and interpreting IRR results. Paraphrasing Richard Shockley, author of my favourite finance reference tex…
This code takes an Excel list of URL’s and adds a header titled “URL List”. It then searches through all URL’s in column “A”, looking for duplicates. When a duplicate is found, it is moved to the top of the list. The duplicate URL’s are then highlig…
Graphs within dashboards are meant to be dynamic, representing data from a period of time that will change each time the dashboard is updated with new data. Rather than update each graph to point to a different set within a static set of data, t…
This Micro Tutorial will demonstrate in Google Sheets how to use the HYPERLINK function to create live links inside your spreadsheet.

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question