Makri Word VBA - tabele: dodajanje, izbiranje, zanka, vstavljanje iz Excela

Dodaj tabelo v Wordov dokument

Ta preprost makro bo v vaš Wordov dokument dodal tabelo:

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

Izberite Tabela v Wordu

Ta makro bo izbral prvo tabelo v aktivnem Wordovem dokumentu:

Sub SelectTable () 'izbere prvo tabelo v aktivnem dokumentu Če je ActiveDocument.Tables.Count> 0 Potem' da bi se izognili napakam, preverimo, ali v aktivnem dokumentu obstaja tabela ActiveDocument.Tabele (1). Izberite End If End Sub

Prelistajte vse celice v tabeli

Ta makro VBA se bo preletel skozi vse celice v tabeli in v celico zapisal število celic:

Sub TableCycling () "zanka skozi vse celice v tabeli Dim nCounter As Long" bo to zapisano v vseh celicah tabele Dim oTable As Table Dim oRow As Row Dim oCell As Cell ActiveDocument.Range.InsertParagraphAfter "samo naredi nov odstavek na koncu dokumenta , Tabela bo ustvarjena tukaj. Set oTable = ActiveDocument.Tables.Add (Range: = ActiveDocument.Paragraphs.Last.Range, NumRows: = 3, NumColumns: = 3) 'ustvarite tabelo in jo dodelite spremenljivki Za vsako oRow v oTable. Zunanja zanka vrstic gre skozi vrstice Za vsako oCell V oRow.Cells 'notranja zanka gre nCounter = nCounter + 1' poveča števec oCell.Range.Text = nCounter 'zapiše števec v celico Naslednja oCell Naslednja oRow' rezultat iz celice iz drugi stolpec v drugi vrstici Dim strTemp As String strTemp = oTable.Cell (2, 2). Range.Text MsgBox strTemp End Sub

Ustvarite Wordovo tabelo iz Excelove datoteke

Ta primer VBA bo naredil tabelo iz datoteke Excel:

Sub MakeTablefromExcelFile () 'napredno Dim oExcelApp, oExcelWorkbook, oExcelWorksheet, oExcelRange Dim nNumOfRows As Long Dim nNumOfCols As Long Dim strFile As String Dim oTable As Table' tabela besedila Dim oRow As Row 'besedna vrstica Dim As Long, y As Long 'števec za zanke strFile = "c: \ Users \ Nenad \ Desktop \ BookSample.xlsx"' se spremeni v dejansko pot Nastavi oExcelApp = CreateObject ("Excel.Application") oExcelApp.Visible = True Set oExcelWorkbook = oExcelApp.Workbooks.Open (strFile) 'odprite delovni zvezek in ga dodelite spremenljivki Nastavi oExcelWorksheet = oExcelWorkbook.Worksheets (1)' prvi delovni list označi kot spremenljivko Nastavi oExcelRange = oExcelWorksheet.Range ("A1: C8ORocNo Count nNumOfCols = oExcelRange.Columns.Count ActiveDocument.Range.InsertParagraphAfter 'naredi samo novo para na koncu dokumenta, bo tukaj ustvarjena tabela Set oTable = ActiveDocument.Tables.Add (Razpon: = ActiveDocument.Paragraphs.Last.Range, = nNumOfRows, NumColumns: = nNumOfCols) 'creat e tabelo in jo dodelite spremenljivki '*** real deal, tabelo se tukaj napolni For x = 1 To nNumOfRows For y = 1 To nNumOfCols oTable.Cell (x, y). Range.Text = oExcelRange.Cells (x, y ) .Vrednost Naprej y Naprej x '*** oExcelWorkbook.Zatvorite False oExcelApp.Quit Z oTable.Rows (1) .Range' lahko zdaj nanesemo nekaj lepote na našo mizo :) .Shading.Texture = wdTextureNone. wdColorAutomatic .Shading.BackgroundPatternColor = wdColorYellow Konec z End Sub

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave