多くのワードプロセッサでは、テーブルをスペースでフォーマットすることは珍しくありません。

各列の最初の文字を揃えるのに十分なスペースが各列の間に挿入されます。ただし、Wordにはテーブルエディタが含まれているため、テーブルの書式設定と操作がより柔軟になります。元々スペースでフォーマットされたASCIIテーブルをWordテーブルに変換するには時間がかかる場合があります。次のVBAマクロは、フォーマットを自動的に実行します。

各行がテーブル内の異なる行を表し、単一のスペースを超えるものはすべて列間の分割を表すことを前提としています。

Sub SpacesToTable     With Selection.Find         .ClearFormatting         .Replacement.ClearFormatting         .Text = " {2,}"

.Replacement.Text = "^t"

.Forward = True         .Wrap = wdFindStop         .Format = False         .MatchCase = False         .MatchWholeWord = False         .MatchAllWordForms = False         .MatchSoundsLike = False         .MatchWildcards = True     End With     Selection.Find.Execute Replace:=wdReplaceAll     Selection.ConvertToTable _       Separator:=wdSeparateByTabs, _       Format:=wdTableFormatNone End Sub

マクロを実行する前に、変換するテキストを選択してください。このマクロを実行すると、テーブルツール(リボンの[挿入]タブ)をクリックして[テキストをテーブルに変換]を選択した場合と同じ結果が得られます。これは、列がファンキーに見える可能性があることを意味します。間違いなくサイズを変更する必要があります。しかし、すべてのスペースを取り除くという大変な作業はあなたのために行われました。

注:

このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

link:/ wordribbon-WordTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]

_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。

(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(12214)は、Microsoft Word 2007、2010、2013、2016、2019、およびOffice 365のWordに適用されます。このヒントのバージョンは、ここにWordの古いメニューインターフェイス:

link:/ word-Formatting_an_ASCII_Table_with_Spaces [スペースを使用したASCIIテーブルのフォーマット]