Set Bookmark Range results in Type Mismatch

I'm writing a VBA program which copies information from Excel into bookmarks in Word. I originally wrote it to be run from the Word document, but it makes more sense to have it in Excel so I'm migrating it over.

The original code worked, and used ActiveDocument throughout, which I've replaced with myDoc.

However, when run it gives the Type Mismatch error when I try to set the bookmark range and I can't figure out why.


myDoc is defined and works well in other places (for instance, if you add the line:

msgbox myDoc.Bookmarks(BookmarkToUse) 

into this sub it correctly returns to bookmark name.

The code for the sub is:

Private Sub UpdateBookmark(BookmarkToUse As String, TextToUse As String, FontToUse As String, SizeToUse As String)

    Dim BMRange As Range
    BMRange.SetRange = myDoc.Bookmarks(BookmarkToUse).Range
    BMRange.Text = TextToUse
    BMRange.Font.Name = FontToUse
    BMRange.Font.Size = SizeToUse
    myDoc.Bookmarks.Add BookmarkToUse, BMRange
End Sub

Any help would be much appreciated.





Submitted via EggHeadCafe - Software Developer Portal of Choice 
IIS - Create App Pools, Virtual Directories and Web Sites C# .NET
http://www.eggheadcafe.com/tutorials/aspnet/d4bba585-b517-4834-8476-ff05b085d86e/iis--create-app-pools-v.aspx
0
Stephen
1/2/2010 8:25:33 PM
excel 39880 articles. 0 followers. Follow

1 Replies
907 Views

Similar Articles

[PageSpeed] 17

Excel has its own Range object.
MSWord has its own Range object.

I'd try:
Dim BMRange As Word.Range 'if you've got a reference to MSWord.
or
dim BMRange as Object     'if you're using late binding (no reference)


Stephen, Jackson wrote:
> 
> I'm writing a VBA program which copies information from Excel into bookmarks in Word. I originally wrote it to be run from the Word document, but it makes more sense to have it in Excel so I'm migrating it over.
> 
> The original code worked, and used ActiveDocument throughout, which I've replaced with myDoc.
> 
> However, when run it gives the Type Mismatch error when I try to set the bookmark range and I can't figure out why.
> 
> myDoc is defined and works well in other places (for instance, if you add the line:
> 
> msgbox myDoc.Bookmarks(BookmarkToUse)
> 
> into this sub it correctly returns to bookmark name.
> 
> The code for the sub is:
> 
> Private Sub UpdateBookmark(BookmarkToUse As String, TextToUse As String, FontToUse As String, SizeToUse As String)
> 
>     Dim BMRange As Range
>     BMRange.SetRange = myDoc.Bookmarks(BookmarkToUse).Range
>     BMRange.Text = TextToUse
>     BMRange.Font.Name = FontToUse
>     BMRange.Font.Size = SizeToUse
>     myDoc.Bookmarks.Add BookmarkToUse, BMRange
> End Sub
> 
> Any help would be much appreciated.
> 
> Submitted via EggHeadCafe - Software Developer Portal of Choice
> IIS - Create App Pools, Virtual Directories and Web Sites C# .NET
> http://www.eggheadcafe.com/tutorials/aspnet/d4bba585-b517-4834-8476-ff05b085d86e/iis--create-app-pools-v.aspx

-- 

Dave Peterson
0
Dave
1/2/2010 8:39:28 PM
Reply:

Similar Artilces:

How do I set up an argument which asks for multiple criteria
I am trying to use an argument that asks for one of three criteria (2345P, 8319T, or 7026J) in cell C108, and if it finds it, enters the amount of yet another cell, G108 into cell K108, and if not enters 0 into cell K108. It seems there are too many arguments for the "if" argument, and I can't seem to get the "lookup" argument to work either. Is there another argument I should be working with? Thanks -- Diver Try: =IF(OR(C108="8319T",C108="2345P",C108="7026J"),G108,0) "bj" wrote: > try in K108 > =if(or(c108=&qu...

setting up new outlook mail account
i can not set up a new account on my outlook, i keep saying establish network connection with a correct sign but searching for my mail account shows X can you please advise Are you trying to setup a POP3 mail account or an Exchange account? Also, what version of Outlook are you using? "rashid" <rashid@discussions.microsoft.com> wrote in message news:C59D04C0-C1C9-4BD1-AE00-2009D25B221D@microsoft.com... > i can not set up a new account on my outlook, i keep saying establish > network > connection with a correct sign but searching for my mail account shows X > ...

OWA Set Rule problem
I have successfully install the Exchange 2003 with SP1 in the Windows Server 2003. Anything alright exclude the rules function in OWA. I try to set the rules from any then "move to" or "copy to" specify folder are no problem, but "forward to" other email address, its don't work. I try to input the email address in the contact and then select from the contact, but the result also don't work. The rules can save and I can receive the incoming email in the Exchange 2003/Outlook or OWA, but it don't forward to my specify email address. I try to...

How do I set the 'Set Synchronizing Client' field
We have a number of outlook clients using CRM that have the 'Set Synchronizing Client' select box greyed out. We need to tick them so that they are able to synchronize tasks etc. Can any one help me find out why these are greyed out and then set them so that they can synchronize thanks In my experience, that checkbox is always greyed out for the first install that is performed for a user. The only time that checkbox becomes active is if a second copy of CRM is installed for a user who already has CRM installed on another PC.... Normally the box is checked and grey. If that is...

Text and ranges.
How do you wrap text within a range? Hi not really sure what you're trying to do. Could you give an example? -- Regards Frank Kabel Frankfurt, Germany "jim252627" <jim252627@discussions.microsoft.com> schrieb im Newsbeitrag news:4D206631-71FA-48BE-82B4-3624D58A987D@microsoft.com... > How do you wrap text within a range? For example, if I am designing a form and one of the fields of the form requires text, the command would be "wrap-text" within the cell format command. However, if many columns are narrow because of fields (ranges) established above or ...

range of dates schedule
I am trying to make a spreadsheet to show me when and how much a too was checked out of my work. i am inputing the dates and i would like the spreadsheet to tell me ho many days in each month it worked. please help, i have been working on this for 2 days -- Message posted from http://www.ExcelForum.com With your "Start date" in A1 and your "Finish date" in B1, put the following formula in C1 and format the cell for Number with no decimal places =B1-A1 Vaya con Dios, Chuck, CABGx3 "Coy Bruner >" <<Coy.Bruner.12gi7n@excelforum-nospam.com> wrote ...

How to set backcolour
Hello All I have a continuous form containing a number field (long integer) called [v_colour]. This field contains the number of a certain colour - as per the numbers that are used in the format properties for back colour etc. I would like to set the back colour for the form's [v_colour] text box to be the value of the field: e.g. If the value of [v_colour] in the first record is 255, I want the back colour of the textbox for that record to be bright red. I tried this as the OnLoad event for the form: [v_colour].backcolour = [v_colour].value .... but this resulted in the back colour of...

Applying Percent Decrease Across Set Periods
I have a column which includes dates when items were purchased. I have used the DATEDIF function to find the number of years between that date and today's date. I now want to decrease the purchase amount 10% for every year calculated via the DATEDIF function. Any ideas, is this possible, why can't I think...? -- Hunt&amp;Peck ------------------------------------------------------------------------ Hunt&amp;Peck's Profile: http://www.excelforum.com/member.php?action=getinfo&userid=32961 View this thread: http://www.excelforum.com/showthread.php?threadid=527873 ...

Copy formula for ranges from diff sheets #2
Unfortunatley then i have to go to every sheet, copy and paste special (transpose) What I need is some sort of formula that will copy the same range fro _all_sheets_ and then paste special (transpose) on to the referenc sheet. ? -- Berni ----------------------------------------------------------------------- Bernie's Profile: http://www.excelforum.com/member.php?action=getinfo&userid=1457 View this thread: http://www.excelforum.com/showthread.php?threadid=26197 Hi not possible with a formula. This would require VBA >-----Original Message----- > >Unfortunatley then i h...

Set Regional Settings but not Language
Hi I have a multi-language APP en-US, es-ES, it-IT I usually change Languages and Locales by using the CultureInfo to switch Languages System.Globalization.CultureInfo myCI = new System.Globalization.CultureInfo("es-ES"); My issue is - what if the user wants to View App in english and use the Regional Options on a PC in say Spain ??? If I change the CultureInfo to en-US then they can view APP in English ( English satelite assemblies) but date and numbers will be in US format If I change the CultureInfo to es-ES then date and numbers will be in Spain forma...

Obtaining the correct results from a two table query
I have two tables say A and B, what I am trying to achieve with the query is just to display records that have the received field ticked in table A and the colour field in table B not containing �Y�. How do I modify the code below to achieve this? SELECT A_Date, A.Received, A.ID, B. Colour FROM A LEFT JOIN B ON DDP_A.Main = B.Main WHERE (((A.Received)= -1) AND ((B.Colour <> �Y�)); jo@jo.uk wrote: >I have two tables say A and B, what I am trying to achieve with the query is >just to display records that have the received field ticked in table A and >the colo...

Work Hours setting excludes specified hours from Scheduling
I am miffed by this problem. I specify a work hour schedule for a user. When I schedule a CRM User as a Resource for a Service in Scheduling of a Service Activity with Requested Time of ASAP and click Find Available Times, the values for Avilable Times returned are outside of the Work Hours I specified for the user and not within the work hours. When I drill into the Work Hours for this User, the Calendar view shows Cross Day rather than 8:00AM - 5:00PM I speciied for work hours and editing the hours reveal the correct hours in the Work Hours. What gives? Never mind. Figured out w...

Reading Pane Settings
I did a search for an answer to this question and have not found one. If I missed an answer already posted, please direct me to the right place. I have Outlook 2007 and set up the "right" reading pane for my e-mail. Now when I go to my calendar it is set up the same way - calendar on the left (same size as the inbox) and then there is a blank space to the right that is the size of the reading pane/preview. To the right is the to-do bar (which I have no problem with). I don't know why there is a reading/preview pane on the calendar when there is nothing to preview, and I...

Outlook "Arrange By" option does not retain its setting
In outlook 2007, I use a custom view for my inbox, and I have the Group By option checked to"Automatically group according to arrangement." This has been workn flawlessly until today, when I realized Outlook did not like a particular mouse click; perhaps I clicked on the border of two options or some other anomoly that caused the window toflash once. The end result was that my Arrange By option changed to "From" when I had previously set it to "Conversation." Now, whenever I hange it backto "Conversation," leave the inbox and come back, ...

interactive buttons, multiple sets
hi folks I'm sure one of you good folks will save my bacon as usual I have a series of websites, all of which exhibit the same odd behavior with interactive buttons. I have a bunch of buttons in the left margin, each of which pulls up ( lets call it ) a chapter, and in each 'chapter' are a number of related pages. On the top of each page is an imbedded page which has 'page numbers' for all the 'pages' in that chapter. So, it's a grid where the 'vertical' buttons in the left margin and the 'horizontal' buttons at the top comb...

How do I set OOR
I have searched the help menu and have had no luck finding out how to set my outlook 200 to send an OOR (Out of Office Reply) Any assistance would be great If you are in an Exchange environment (ask your administrator if you do notknow) you can set the Out of the Office Assistant which is located under Tools. If you are not in an Exchange environment you can create a rule that replies on all e-mails. The downside of this is that you'll have to have your Outlook open all the time for the rules to process. Make sure you set some exceptions (for instance based on the subject field so ...

Set Focus
I have text box that I input data into and I was wondering if it is possible to set focus to the text box and avoid clicking on the box. I thought the term is Set Focus, but can't find any information or example that would help in doing so. Any help would be appreciated .. PPT 2003. Look at the following page for code to set focus on a text box: http://officeone.mvps.org/vba/activate_shape.html - Chirag PowerShow - View multiple PowerPoint slide shows simultaneously http://officeone.mvps.org/powershow/powershow.html "Phil K" <PhilK@discussions.microsof...

How do I print a timeline date range?
I have a timeline that starts in 9/2003 and extends past today. I want to print only a piece of that timeline: 11/1/2005 to 12/31/2005. How do I do that? If you are running Visio 2003, there is an option on the Print Dialog to print current view. So if you zoom into the area you want, you can print just what you see. John... Visio MVP Need stencils or ideas? http://www.mvps.org/visio/3rdparty.htm Need VBA examples? http://www.mvps.org/visio/VBA.htm Common Visio Questions http://www.mvps.org/visio/common_questions.htm Visio Wishlist http://www.mvps.org/visio/wish_list.htm &qu...

Set published amount of calendar information
Hey guys! Is there any way I can have Exchange 2000/2003 force the amount of time published in the outlook calendar? I know that you can go into the the calendar options and set the amount you want published, but is there a way to have exchange require the amount that is published so that I could get everyone to publish a year's worth of calendar data instead of one person being set at 2 months and another at 6 months and another at 12? Thanks! Mike On Thu, 29 Jun 2006 06:18:02 -0700, Mike <Mike@discussions.microsoft.com> wrote: >Hey guys! > >Is there any way I c...

Publisher 2003 Need to set business card to Avery 5371 setting
I need to set the print settings so the business cardd that I created will print on Avery 5371 business cards Okay.........and your question is? -- JoAnn Paules MVP Microsoft [Publisher] "Jonathan" <Jonathan @discussions.microsoft.com> wrote in message news:187615DD-9EF1-42A2-8436-78E6E6C6ACE4@microsoft.com... >I need to set the print settings so the business cardd that I created will > print on Avery 5371 business cards Page setup, business cards, click change copies per sheet, type > .5 top, .75 side, zero gaps. Avery 5371 is a standard business card s...

Setting the Settings
Really quickly: How (exactly) does one get Publisher to remember the page settings I want. ie. every time I open a new document, I get centimeters, and usually, I'd prefer inches. I have not been able to find a "Save Settings" option anywhere. Can anyone help? thomas In Publisher 2000 it's Tools Options General tab Measurements unit box - select inches. OK That should do it. -- Don -------- Vancouver, USA - One of the great cities in one of the 45+ countries in America! "ThomasL" <tlammert@netcom.ca> wrote in message ne...

Fill Color a Range
I want to fill a range with a color. I know how to do that but I don't know how to keep the grid lines visible in that range. It seems I would need a transparent color or something like that. How can I fill a range with a color that will allow the grid lines to show through? Thank you. The only way is to give the gridlines an alternative colour of their own. -- HTH RP (remove nothere from the email address if mailing direct) "Jack Gillis" <XXXXXXXX@widomaker.com> wrote in message news:112bdn5bm4udrff@corp.supernews.com... > I want to fill a range with a ...

"Object or class does not support the set of events" Quick Question
All, I built a MS Access database in MS Access 2003, which I have set up in a shared folder. I have a form with some standard components such as text boxs, bottons. When a user updates the form I wish to record the time/date and username in the record. I have posted a copy of the code I'm using for the "BeforeUpdate" event below. Now this works fine on my machine and updates without a problem. However when a user on another machine (also using MS Access 2003) tries to update the same field, he gets the following error: "The expression Before Update you entered as the eve...

Strange permission Settings.
Hey folks I got a strange problem and i think it has somthing to do with permisions server end but it is possible this could also be a client side problem Okay so im on the support desk we have a number of users that access an exchange 2003 server using outlook 2003 some teams share access team maiboxes. When they try to add a custom field to (in tasks or email) on a shared mailbox they recive this error message "You do not have sufficient permission to perform this operation on this object. See the folder contact or the system administrator" But they have full rights to it an...

CTypedSimpleList<TYPE> and ATL::CComPtrBase
hi, i recently dig into the MFC souce code with the aid of a debugger. there's something i can't figure out in "src/dllinit.cpp", DllMain; everything looks fine until when it comes to the 2 lines below: <1>CRuntimeClass* pModuleState->m_pClassInit = pModuleState->m_classList.GetHead(); //m_classList is CTypedSimpleList<CRuntimeClass*), but why does debugger say it's calling CTypedSimpleList<COleObjectFactory*>::GetHead()? where does it declare? <2>COleObjectFactory* pModuleState->m_pFactoryInit = pModuleState->m_factoryList.GetHead(); //...