Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #5  
Old 12-08-2014, 09:27 AM
ptmuldoon ptmuldoon is offline Pulling Data From Excel Windows 7 64bit Pulling Data From Excel Office 2013
Advanced Beginner
Pulling Data From Excel
 
Join Date: Sep 2014
Posts: 93
ptmuldoon is on a distinguished road
Default

In Excel, I have a few hundred cells labeled with a NamedRange.

ie, Cell B10 on Worksheet2 may be called 'Company_Name', 'GL_Name', or something else. The information in these cells is all text.

Now in Word, I have similarly named BookMarks of 'Company_Name', etc.

Now, i'm trying to compare the BookMark Name to the NamedRange in Excel. And if a match is found, to update the BookMark with the value of the NamedRanged.

I'm boarding a plane here soon, but will report back later tonight as well as I continue to learn and experiment some more.

And thank you for your help as well. I'm (very) slowly beginning to understand and learn more on VBA. Its a long self learning !!

Edit. Made some more progress. And the below is now close. But it gives me the cell reference, ie. =Sheet1!$E$5 vs the actual value of the cell. So Unsure how to correct the NmdValue = Nm.Value in the below.

And/Or a better way vs looping everything.

Code:
Sub Test()
    Dim f, xlWorkBook As Object
    Dim Bm, Nm As Variant
    Dim Bmk, NmdRng, NmdValue As String
    Dim NewPath, MyText As String

    'Choose the Excel File
    Set f = Application.FileDialog(msoFileDialogFilePicker)
    f.Title = "Please Select A New File"
    f.AllowMultiSelect = False
    f.Filters.Clear
    f.Filters.Add "Microsoft Excel Files", "*.xls, *.xlsb, *.xlsm, *.xlsx" 'Limit to Excel Files Only

    If f.Show = -1 Then
        'NewPath = f.SelectedItems(1)
        'MsgBox "The New File Path is: " & NewPath
        Set xlWorkBook = GetObject(f.SelectedItems(1))
    Else 'user clicked cancel
        Exit Sub
    End If
    
    For Each Bm In ActiveDocument.Bookmarks
        Bmk = Bm.Name
        'MsgBox Bm
             
        ' Check Each BookMark for a Matching NamedRanged in the Excel File
        For Each Nm In xlWorkBook.Names
        NmdRng = Nm.Name
        NmdValue = Nm.Value 'This currently wrong, gives the cell reference, not the value?
        
             If Bmk = NmdRng Then
                'MsgBox "Match Found with " & Bmk
                'MsgBox NmdValue
                MyText = "String you want to insert"
                'ActiveDocument.Bookmarks(Bmk).Range.InsertAfter MyText
                ActiveDocument.Bookmarks(Bmk).Range.InsertAfter NmdValue
                'UpdateBM Bmk, MyText
                 Exit For
             End If
        Next Nm
        
    Next Bm
    
    ActiveDocument.Bookmarks.ShowHidden = True
    ActiveWindow.View.ShowBookmarks = False
    
End Sub


Sub UpdateBM(BookmarkToUpdate As String, TextToUse As String)
    Dim BMRange As Range
    Set BMRange = ActiveDocument.Bookmarks(BookmarkToUpdate).Range
    BMRange.Text = TextToUse
    ActiveDocument.Bookmarks.Add BookmarkToUpdate, BMRange
End Sub

Last edited by ptmuldoon; 12-08-2014 at 12:18 PM.
Reply With Quote
 



Similar Threads
Thread Thread Starter Forum Replies Last Post
How to replicate, consolidate and count cell data in excel for data consoldation. Loran Excel 7 06-05-2014 01:07 AM
Help please: Automatically pulling info out of one document and place in others. qwerty11 Word 2 06-25-2013 07:49 AM
Pulling Address Generated Word Documents Aalaf Alot Word 1 09-06-2012 11:27 PM
Pulling Data From Excel Need help with pulling out information mtnguye9 Excel 6 07-24-2010 07:52 PM
Mail merging and pulling varying data from Excel shannag1881 Mail Merge 0 10-05-2009 08:51 AM

Other Forums: Access Forums

All times are GMT -7. The time now is 11:52 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Search Engine Optimisation provided by DragonByte SEO (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
MSOfficeForums.com is not affiliated with Microsoft