Dim myTxt As String
myTxt = ActiveDocument.Tables(1).Cell(1,1).Range.Text
とします。myTxt = ActiveDocument.Tables(1).Cell(1,1).Range.Text
このマクロコードを実行すると、変数myTxtに、表の左上端に入っている文字列が格納されます。
ただし、表の中から取り出した文字列には、後ろに余計な制御文字がくっ付いています。
余計な制御文字とは、
1 段落記号(改行文字)
2 セルの区切りを表す制御文字
の2文字です。
この2文字が邪魔になります。
この点は、先日の記事で、詳しく説明しています。
ぜひ ⇒ こちらの記事をご覧ください。
そこで、表の中から文字列を取り出した場合には、末尾の制御文字を削除する作業が必要になります。
文字列から、後ろの2文字を削除するときのVBAコードは、
MsgBox Left(myTxt, Len(myTxt) - 2)
です。![](https://blogimg.goo.ne.jp/user_image/6f/54/c98d32154a99815a385600f1c933cdfd.jpg)
上記の Left も、Len も、文字列を操作するVBA関数です。
■ Left関数は、
文字列の左から指定された文字数分の文字列を返します。
構文は、Left(文字列、文字数) です。
■ Len関数は、
指定した文字列の長さ(文字数)を返します。
構文は、Len(文字列) です。
上記のLeft とLen を組み合わせて、
Left(myTxt, Len(myTxt) - 2)
とすれば、文字列の末尾2文字が削除され、その結果の文字列が返されます。
それでは、また次の記事で
■■■■ goosyun ■■■■
![](https://blogimg.goo.ne.jp/user_image/1f/88/100bd06d901e04ad321a22f00b401819.png)