Excel - Store and regain the IRibbonUI object reference


"Excel VBA Help"

 


Play Friv Now - Play Friv Games
Go Back   The Code Cage Forums > Resource Forums > Top Tips
Our Info Pages:-
The Code Cage - Microsoft Office help

Notices

Top Tips Microsoft Office Application Top Tips submitted by our members.

 
 
Thread Tools Rate Thread Display Modes
  #1  
Old 6th January 2011, 17:07
WernerGg's Avatar
WernerGg WernerGg is offline
Junior Member
MS Office Version: MS Office 2007
MS Office Skill Level: Proficient with MS Office
 
Join Date: Oct 2010
Location: Stuttgart, Germany
Age: 67
Posts: 28
Posts Per Day: 0.01
My Top Tip Count: 3
Thanks to others: 0
Thanked 0 Times in 0 Posts
Reputation: 50 (8) WernerGg will become famous soon enough
3 Top Tips
Germany
Default Excel - Store and regain the IRibbonUI object reference
     


------ Register to get rid of these "In Post" ads! ------

Top Tip
Submitted By: WernerGg
Date: 6th January 2011
Tip Description
For dynamic ribbon UIs the IRibbonUI must be stored in a static variable which is lost after runtime errors. We store that reliably at a save place.
Difficulty Of Implementation Level (1 = Easy......5 = Difficult)
3
User Level Required to Adapt Tip

Advanced

Posted Top Tip
Top Tip

Top Tip

For dynamic ribbon UIs the IRibbonUI must be stored in a static variable which is lost after runtime errors. We store that reliably at a save place and regain it when lost.

The subject was discussed and solved in http://www.thecodecage.com/forumz/me...ribbon-ui.html . See there.

There is also an attached workbook TestRibbonUI_3.xlsm which demonstrates the problem and the solution.

The same mechanism can be used for any object reference.

Basically we do:
VBA CODE:
Private Declare Sub CopyMemory Lib "kernel32" _ 
Alias "RtlMoveMemory" (destination As Any, source As Any, ByVal length As Long) 
 
Sub StoreObjRef(obj As Object) 
 ' Store an object reference
Dim longObj As Long 
longObj = ObjPtr(obj) 
Range("...") = longObj 
End Sub 
 
Function RetrieveObjRef() As Object 
 ' Retrieve the object reference
Dim longObj As Long, obj As Object 
longObj = Range("...") 
CopyMemory obj, longObj, 4 
Set RetrieveObjRef = obj 
End Function 






The Code Cage Advertisment
Advertisement

To stop seeing these ads and get other benefits check This page!

 
The Code Cage at Facebookhe Code Cage at Twitter


Tags
excel, iribbonui, object, reference, regain, store

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

The Code Cage Affilliates



http://www.thecodecage.com/forumz tested by McAfee Security http://www.thecodecage.com/forumz tested by McAfee Security

All times are GMT +1. The time now is 02:05.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Template-Modifications by TMS
No part of this board, functionality or creatives may be copied or reproduced either in part or full without the express permission of The Code Cage Team.
Copyright ©2008 - , Simon lloyd.
We are not associated with nor employed by Microsoft in any way, we simply provide resources!
All MS office icons are registered trademarks of the application they represent and are used with permission from Microsoft
UA-8135493-1
Cultural Forum | Study at Malaysian University
X vBulletin 3.8.7 Debug Information
  • Page Generation 0.19330 seconds
  • Memory Usage 6,273KB
  • Queries Executed 14 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footerEnd
  • (1)ad_footerStart
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_headerEnd
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_leftcolumn_code
  • (1)ad_navbar_below
  • (1)ad_postbit_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_code
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)helpful_answers
  • (1)helpfulanswers_javascript
  • (1)navbar
  • (3)navbar_link
  • (3)navbar_noticebit
  • (52)option
  • (1)post_thanks_box
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_ctoptip
  • (1)postbit_onlinestatus
  • (1)postbit_reputation
  • (1)postbit_wrapper
  • (1)showthread_changepostsowner_link
  • (1)showthread_quickreply_mrgdp
  • (1)showthread_reason_popup
  • (1)spacer_close
  • (1)spacer_open
  • (1)su_form
  • (6)tagbit
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_datastore.php
  • ./includes/class_hook.php
  • ./awcoding/plugins/awc.php
  • ./awcoding/plugins/ds.php
  • ./awcoding/plugins/ss.php
  • ./includes/functions_notice.php
  • ./mobiquo/smartbanner.php
  • ./mobiquo/include/classTTConnection.php
  • ./mobiquo/smartbanner/head.inc.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/vbatags.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php
  • ./includes/functions_misc.php 

Hooks Called:
  • init_startup
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • fetch_musername
  • notices_check_start
  • notices_check_criteria
  • notices_noticebit
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • helpfulanswers_showthreadorpost
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • helpfulanswers_show_normal
  • reputation_power
  • reputation_image
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • error_fetch
  • tag_fetchbit
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete