Word VBAでテーブルの行数を数える方法【初心者向け解説】

パソコンパソコン・スマホ教室
スポンサーリンク

Wordの文書内にあるテーブルの行数を数えたいとき、VBA(Visual Basic for Applications)を使うと便利です。特に、パソコンやスマホの操作に不安がある方でも、わかりやすく解説しますので、ぜひ最後までご覧ください。

スポンサーリンク

Word VBAでテーブルの行数を数える基本の方法

Wordのイメージ

Wordのイメージ

まず、最も基本的な方法をご紹介します。WordのVBAでは、テーブルの行数を数えるには、以下のように記述します。

Sub CountTableRows()
Dim tbl As Table
Set tbl = ActiveDocument.Tables(1) ' 1番目のテーブルを指定
MsgBox "行数: " & tbl.Rows.Count
End Sub

このコードは、現在開いている文書の1番目のテーブルの行数をメッセージボックスで表示します。テーブルが複数ある場合は、`Tables(1)`の部分を`Tables(2)`、`Tables(3)`と変更することで、他のテーブルの行数も取得できます。

エラーを防ぐための工夫

初心者の方がよくつまずくのが、テーブルが存在しない場合のエラーです。これを防ぐためには、以下のように記述します。

Sub SafeCountTableRows()
On Error Resume Next
Dim tbl As Table
Set tbl = ActiveDocument.Tables(1)
On Error GoTo 0
If Not tbl Is Nothing Then
MsgBox "行数: " & tbl.Rows.Count
Else
MsgBox "テーブルが存在しません。"
End If
End Sub

このコードでは、テーブルが存在しない場合でもエラーが発生せず、「テーブルが存在しません。」というメッセージが表示されます。

特定の列にデータがある行だけを数える方法

テーブルの中で、特定の列にデータが入力されている行だけを数えたい場合、以下のように記述します。

Sub CountRowsWithDataInColumn()
Dim tbl As Table
Set tbl = ActiveDocument.Tables(1)
Dim count As Integer
count = 0
Dim i As Integer
For i = 1 To tbl.Rows.Count
If Len(Trim(tbl.Cell(i, 1).Range.Text)) > 0 Then
count = count + 1
End If
Next i
MsgBox "データがある行数: " & count
End Sub

このコードでは、1列目にデータが入力されている行の数をカウントします。`Cell(i, 1)`の部分を変更することで、他の列を対象にすることもできます。

よくある質問や疑問

Q1: テーブルが複数ある場合、すべてのテーブルの行数を数えるにはどうすればよいですか?

以下のように記述することで、すべてのテーブルの行数を順番に表示できます。

Sub CountAllTableRows()
Dim tbl As Table
Dim i As Integer
For i = 1 To ActiveDocument.Tables.Count
Set tbl = ActiveDocument.Tables(i)
MsgBox "テーブル " & i & " の行数: " & tbl.Rows.Count
Next i
End Sub

Q2: テーブル内の空白行を除外して数えるにはどうすればよいですか?

上記の「特定の列にデータがある行だけを数える方法」を参考に、空白でないセルがある行だけをカウントするようにしてください。

Q3: VBAのコードを実行するにはどうすればよいですか?

Wordで「Alt + F11」を押してVBAエディタを開き、上記のコードを貼り付けて「F5」を押すと実行できます。

今すぐ解決したい!どうしたらいい?

LINE公式

いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」

あなたはこんな経験はありませんか?

✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦

平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。

LINEでメッセージを送れば即時解決!

すでに多くの方が私の公式LINEからお悩みを解決しています。

最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。

誰でも無料で使えますので、安心して使えます。

問題は先のばしにするほど深刻化します。

小さなエラーがデータ消失重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。

あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。

相談しに行く

ぜひ、あなたの悩みを私に解決させてください。

まとめ

今回は、Word VBAを使ってテーブルの行数を数える方法をご紹介しました。初心者の方でも理解しやすいように、実際のコードとともに解説しました。VBAを使うことで、日々の作業を効率化できますので、ぜひ挑戦してみてください。

他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。

コメント

タイトルとURLをコピーしました