In meiner Arbeit muss ich Dokumente erstellen, die viele Tabellen enthalten.

Diese Tabellen müssen einer starren Struktur folgen, einschließlich der Anforderung, dass keine Zelle leer sein darf. (Wenn eine Zelle sonst leer wäre, muss sie die Zeichen „N / A“ enthalten.)

Um die Arbeit mit dieser Anforderung für Tabellen zu erleichtern, habe ich ein Makro erstellt, das die Tabelle für mich untersucht und gegebenenfalls die N / A-Zeichen hinzufügt. Ich muss lediglich die Einfügemarke in die Zieltabelle einfügen und dann dieses Makro ausführen:

Sub AddTableNA()

Dim NumRows As Integer     Dim NumCols As Integer     Dim J As Integer     Dim K As Integer     Dim ChkTxt As String

If Not Selection.Information(wdWithInTable) Then         Exit Sub     End If

NumRows = Selection.Tables(1).Rows.Count     NumCols = Selection.Tables(1).Columns.Count

'Loop to select each row in the current table     For J = 1 To NumRows         'Loop to select each cell in the current row         For K = 1 To NumCols             'Select the cell to check             Selection.Tables(1).Rows(J).Cells(K).Select             'Copy any text in the cell             ChkTxt = Selection.Text             'Strip off the last 2 characters (removes end of cell marker)

ChkTxt = Left(ChkTxt, Len(ChkTxt) - 2)

'If empty, add "n/a" text             If (ChkTxt = "") Then Selection.TypeText ("N/A")

Next K     Next J End Sub

Das Makro prüft zunächst, ob sich die Einfügemarke in einer Tabelle befindet.

Wenn nicht, wird das Makro vorzeitig beendet. In diesem Fall werden die Variablen NumRows und NumCols auf die Anzahl der Zeilen bzw. Spalten in der Tabelle festgelegt.

Das Makro durchläuft dann jede Zelle jeder Zeile und bestimmt, ob die Zelle etwas enthält. Aufgrund der Art und Weise, wie Word Tabellen erstellt, enthält eine Zelle immer etwas – die Markierung am Ende der Zelle -, auch wenn sich nichts anderes darin befindet. Die Lösung bestand darin, zwei Zeichen vom Ende des Textes in der Zelle zu subtrahieren und dann zu prüfen, ob noch etwas übrig war. Wenn nicht, werden die Zeichen „N / A“ in die Zelle eingegeben.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.

(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (3875) gilt für Microsoft Word 97, 2000, 2002 und 2003. Sie finden eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Word (Word 2007) und später) hier: