VBA Tools

Kopiowanie tabeli z Worda do Excela

napisane przez Oskar w dniu poniedziałek, 3 Październik, 2011, w kategorii Porady - Excel

Jak skopiować konkretną tabelę z Worda do Excela w tle?

Wpierw należy odczytać nr tabeli w dokumencie, ponieważ MS Word zapisuje kolejno tabele i jedynie w ten właśnie sposób można się do nich odwołać. W poniższej procedurze do stałej przypisujemy jej numer a następnie, po określeniu pozycji kursora następuje jej wklejenie.

Sub Tabela_z_WtoXL()
'MVP OShon from VBATools.pl
Const nr_tabeli As Integer = 2                  'Numer tabeli

Dim wdApp As Object
Set wdApp = CreateObject("Word.Application")

 Dim FileName As Variant
 FileName = Application.GetOpenFilename( _
 filefilter:="Pliki Worda (*.doc*),*.doc*", _
 Title:="Wybierz plik do wydruku")

 If FileName = False Then
 MsgBox "Nie wybrano żadnego pliku!", vbExclamation, "VBATools.pl"
 Exit Sub
 End If
With wdApp
 .Visible = False
 .Documents.Open FileName:=FileName
 If .ActiveDocument.Tables.Count < nr_tabeli Then GoTo blad
 .ActiveDocument.Tables(nr_tabeli).Range.Copy
 Sheets("arkusz1").Range("a6").Select         'Ustawienie kursora
 ActiveSheet.Paste                            'Kopiowanie do Excela
 .ActiveWindow.Close
End With
Set wdApp = Nothing

Exit Sub
blad:
 MsgBox "Wybrany plik nie posiada tabeli nr:" & nr_tabeli, _
 vbExclamation, "VBATools.pl"
End Sub

(c) Shon Oskar – www.VBATools.pl

Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.

Podziel się ze znajomymi:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Blip
  • Grono
  • Gwar
  • Kciuk.pl
  • LinkedIn
  • MySpace
  • OSnews.pl
  • Śledzik
  • Spis.pl
  • Technorati
  • Twitter
  • Vala.pl
  • Wahacz.pl
  • Wykop

Wpisz swój komentarz:

Comment Spam Protection by WP-SpamFree