Word VBA-Makros - Tabellen: Hinzufügen, Auswählen, Schleifen, Einfügen aus Excel

Tabelle zu Word-Dokument hinzufügen

Dieses einfache Makro fügt Ihrem Word-Dokument eine Tabelle hinzu:

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

Tabelle in Word auswählen

Dieses Makro wählt die erste Tabelle im aktiven Word-Dokument aus:

Sub SelectTable() 'wählt die erste Tabelle im aktiven Dokument aus If ActiveDocument.Tables.Count > 0 Then 'Um Fehler zu vermeiden, prüfen wir, ob eine Tabelle im aktiven Dokument ActiveDocument.Tables(1) existiert.Select End If End Sub

Durchlaufen aller Zellen in einer Tabelle

Dieses VBA-Makro durchläuft alle Zellen in einer Tabelle und schreibt die Zellenzahl in die Zelle:

Sub TableCycling() ' Schleife durch alle Zellen in der Tabelle Dim nCounter As Long ' dies wird in alle Tabellenzellen geschrieben Dim oTable As Table Dim oRow As Row Dim oCell As Cell ActiveDocument.Range.InsertParagraphAfter 'macht einfach einen neuen Para am Ende des Dokuments , Tabelle wird hier erstellt Set oTable = ActiveDocument.Tables.Add(Range:=ActiveDocument.Paragraphs.Last.Range, NumRows:=3, NumColumns:=3) 'Tabelle erstellen und Variablen für jede oRow in oTable zuweisen. Rows 'äußere Schleife geht durch Zeilen für jede oCell In oRow.Cells 'innere Schleife geht nCounter = nCounter + 1 'erhöht den Zähler oCell.Range.Text = nCounter 'schreibt Zähler in die Zelle Next oCell Next oRow 'Ergebnis aus Zelle anzeigen von zweite Spalte in zweiter Zeile Dim strTemp As String strTemp = oTable.Cell(2, 2).Range.Text MsgBox strTemp End Sub

Word-Tabelle aus Excel-Datei erstellen

Dieses VBA-Beispiel erstellt eine Tabelle aus einer Excel-Datei:

Sub MakeTablefromExcelFile() 'erweitert Dim oExcelApp, oExcelWorkbook, oExcelWorksheet, oExcelRange Dim nNumOfRows As Long Dim nNumOfCols As Long Dim strFile As String Dim oTable As Table 'Wort Tabelle Dim oRow As Row o 'Cell Zelle Dim oRow As Row o Tabelle Zelle As Long, y As Long 'Zähler für Schleifen strFile = "c:\Users\Nenad\Desktop\BookSample.xlsx" 'zum aktuellen Pfad ändern Set oExcelApp = CreateObject("Excel.Application") oExcelApp.Visible = True Set oExcelWorkbook = oExcelApp.Workbooks.Open(strFile) 'Arbeitsmappe öffnen und der Variablen zuweisen Set oExcelWorksheet = oExcelWorkbook.Worksheets(1) 'das erste Arbeitsblatt der Variablen zuweisen Set oExcelRange = oExcelWorksheet.Range("A1:C8") nNumOfRows = RowExcelRange. Count nNumOfCols = oExcelRange.Columns.Count ActiveDocument.Range.InsertParagraphAfter 'macht einfach einen neuen Para am Ende des Dokuments, Tabelle wird hier erstellt Set oTable = ActiveDocument.Tables.Add(Range:=ActiveDocument.Paragraphs.Last.Range:, NumRow =nNumOfRows, NumColumns:=nNumOfCols) 'create e Tabelle und weisen Sie sie der Variablen '***real deal zu, Tabelle wird hier gefüllt For x = 1 To nNumOfRows For y = 1 To nNumOfCols oTable.Cell(x, y).Range.Text = oExcelRange.Cells(x, y ).Value Next y Next x '*** oExcelWorkbook.Close False oExcelApp.Quit Mit oTable.Rows(1).Range 'können wir unserer Tabelle jetzt etwas Schönheit verleihen :) .Shading.Texture = wdTextureNone .Shading.ForegroundPatternColor = wdColorAutomatic .Shading.BackgroundPatternColor = wdColorYellow End With End Sub

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave