テーブルのすべてのセルに何かを入れる(Microsoft Word)
私の仕事では、多くのテーブルを含むドキュメントを作成する必要があります。
これらのテーブルは、セルを空にすることはできないという要件を含め、厳密な構造に従う必要があります。 (セルが空の場合は、「N / A」の文字が含まれている必要があります。)
テーブルに対するこの要件の処理を支援するために、テーブルを調べて、必要に応じてN / A文字を追加するマクロを作成しました。私がする必要があるのは、ターゲットテーブル内に挿入ポイントを配置してから、次のマクロを実行することです。
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
マクロは最初に、挿入ポイントがテーブル内にあるかどうかを確認します。
そうでない場合、マクロは早期に終了します。その場合、NumRows変数とNumCols変数は、それぞれテーブルの行数と列数に設定されます。
次に、マクロは各行の各セルをステップスルーし、セルに何かが含まれているかどうかを判断します。 Wordがテーブルを作成する方法により、セルには、他に何も含まれていない場合でも、常に何か(セルの終わりマーカー)が含まれます。解決策は、セル内のテキストの末尾から2文字を減算して、何かが残っているかどうかを確認することでした。そうでない場合は、「N / A」の文字がセルに入力されます。
注:
このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。
(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(13265)は、Microsoft Word 2007、2010、2013、2016、2019、およびOffice 365のWordに適用されます。このヒントのバージョンは、ここにWordの古いメニューインターフェイス:
linkテーブルのすべてのセルに何かを置く。