Word VBA Macros - Tabelele: Adăugați, Selectați, Buclați, Inserați din Excel

Adăugați tabel la documentul Word

Această macrocomandă simplă va adăuga un tabel la documentul dvs. Word:

Sub VerySimpleTableAdd () Dim oTable as Table Set oTable = ActiveDocument.Tables.Add (Range: = Selection.Range, NumRows: = 3, NumColumns: = 3) End Sub

Selectați Tabel în Word

Această macrocomandă va selecta primul tabel din documentul Word activ:

Sub SelectTable () "selectează primul tabel din documentul activ Dacă ActiveDocument.Tables.Count> 0 Apoi" pentru a evita erorile verificăm dacă există vreun tabel în documentul activ ActiveDocument.Tables (1). Selectați End If End Sub

Buclați prin toate celulele dintr-un tabel

Această macrocomandă VBA va parcurge toate celulele dintr-un tabel, scriind numărul de celule în celulă:

Sub TableCycling () 'buclă prin toate celulele din tabel Dim nCounter As Long' acest lucru se va scrie în toate celulele tabelului Dim oTable As Table Dim oRow As Row Dim oCell As Cell ActiveDocument.Range.InsertParagraphAfter 'tocmai face un nou para la sfârșitul documentului , Tabelul va fi creat aici. Bucla exterioară a rândurilor trece prin rânduri Pentru fiecare oCell din oRow.Bucla interioară a celulelor merge nCounter = nCounter + 1 'mărește contorul oCell.Range.Text = nCounter' scrie contorul în celulă Next oCell Next oRow 'rezultatul afișării din celula din a doua coloană în al doilea rând Dim strTemp As String strTemp = oTable.Cell (2, 2) .Range.Text MsgBox strTemp End Sub

Creați tabel Word din fișier Excel

Acest exemplu VBA va face un tabel dintr-un fișier Excel:

Sub MakeTablefromExcelFile () 'Advanced Dim oExcelApp, oExcelWorkbook, oExcelWorksheet, oExcelRange Dim nNumOfRows As Long Dim nNumOfCols As Long Dim strFile As String Dim oTable As Table' tabel cuvânt Dim oRow As Row 'rând rând cuvânt Dim oCell Ca celulă As Long, y As Long 'contor pentru bucle strFile = "c: \ Users \ Nenad \ Desktop \ BookSample.xlsx"' schimbați calea reală Set oExcelApp = CreateObject ("Excel.Application") oExcelApp.Visible = True Set oExcelWorkbook = oExcelApp.Workbooks.Open (strFile) 'open workbook and assign it to variable Set oExcelWorksheet = oExcelWorkbook.Worksheets (1)' asign prima foaie de lucru la variabilă Set oExcelRange = oExcelWorksheet.Range ("A1: C8") nNumOfRows = oExcelRange.Rows. Count nNumOfCols = oExcelRange.Columns.Count ActiveDocument.Range.InsertParagraphAfter 'tocmai face noua para la sfârșitul documentului, tabelul va fi creat aici Set oTable = ActiveDocument.Tables.Add (Range: = ActiveDocument.Paragraphs.Last.Range, NumRows: = nNumOfRows, NumColumns: = nNumOfCols) 'creat Tabelul și atribuiți-l variabilei „*** afacere reală, tabelul se completează aici Pentru x = 1 Pentru nNumOfRows Pentru y = 1 Pentru nNumOfCols oTable.Cell (x, y) .Range.Text = oExcelRange.Cells (x, y ) .Value Next y Next x '*** oExcelWorkbook.Close False oExcelApp.Quit With oTable.Rows (1) .Range' putem aplica acum o frumusețe la masa noastră :) .Shading.Texture = wdTextureNone .Shading.ForegroundPatternColor = wdColorAutomatic .Shading.BackgroundPatternColor = wdColorYellow End With End Sub
wave wave wave wave wave