+ Reply to Thread
Results 1 to 4 of 4
  1. #1
    Registered User
    Join Date
    06-16-2008
    Posts
    9

    Macro excel to copy and paste table from Word

    Hello,

    I hope someone could help me.
    I need to design a macro, that is able to find tables in a word document, then to copy and paste them in excel.
    Many thanks.

    regards.

    Shun

  2. #2
    Forum Moderator Leith Ross's Avatar
    Join Date
    01-15-2005
    Location
    San Francisco, Ca
    MS-Off Ver
    2000, 2003, & read 2007
    Posts
    15,497
    Hello Shunlee,

    Welcome to the Forum!

    This macro runs from the Word Document that has the tables. Each table is copied to Active Workbook on Sheet1 starting at cell "A1" and with each table separated by a blank line. The macro may need some adjustments to work correctly for your needs. The code in marked in red should be changed to match your layout.
    Code:
    Sub CopyWordTables()
    
      Dim C As Variant
      Dim R As Long
      Dim Tbl As Table
      Dim xlApp As Object
      Dim xlWkb As Object
      Dim xlWks As Object
      
       'Set the starting cell on the worksheet
        C = "A"
        R = 1
        
       'Attach to the open workbook
        Set xlApp = GetObject(, "Excel.Application")
        Set xlWkb = xlApp.ActiveWorkbook
        
       'Select the worksheet to copy the tables to
        Set xlWks = xlApp.Worksheets("Sheet1")
        
         'Search the active Word document for Tables
         'and copy them to the Workbook
          For Each Tbl In ActiveDocument.Content.Tables
            Tbl.Range.FormattedText.Copy
            xlWks.Cells(R, C).Select
            xlWks.Paste
            R = R + Tbl.Rows.Count + 1
          Next Tbl
          
    End Sub
    Adding the Macro
    1. Copy the macro above pressing the keys CTRL+C
    2. Open your workbook
    3. Press the keys ALT+F11 to open the Visual Basic Editor
    4. Press the keys ALT+I to activate the Insert menu
    5. Press M to insert a Standard Module
    6. Paste the code by pressing the keys CTRL+V
    7. Make any custom changes to the macro if needed at this time
    8. Save the Macro by pressing the keys CTRL+S
    9. Press the keys ALT+Q to exit the Editor, and return to Word.

    To Run the Macro...
    To run the macro from Excel, open the workbook, and press ALT+F8 to display the Run Macro Dialog. Double Click the macro's name to Run it.

  3. #3
    Registered User
    Join Date
    06-16-2008
    Posts
    9
    Hello Leith Ross,

    I test your macro and it works fine.
    I'd like to thank you for your Help.
    I appreciate.

    Thanks

    ShunLee

  4. #4
    Registered User
    Join Date
    06-16-2008
    Posts
    9
    Hi Ross, Hi All

    Perhaps, you could help me again....sorry for bothering
    In my previous word document, I have some paragraph header and each paragraph contains a table. I need a macro to copy each paragraph header and its table from word to a new excel sheet (renamed with the paragraph header name).
    I tried to modify your proposed macro to do this job but without success
    Many thanks

    ShunLee

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.2.0