0

こんにちは、みんな私は問題を抱えています:

ユーザーがms wordでテーブルに渡される行を追加できるフォームがあります

  1. すべてのフォームを循環して行を追加するとき、関数を呼び出します
  2. MS WORD ドキュメントの表に新しい行を挿入します (テンプレートから)
  3. セルにテキストを追加しようとすると、1行目にのみテキストが追加されます!

これは私がそれを行う方法です:

Dim frame As Control
For Each frame In fillForm.MultiPage1.Pages(2).Controls
    If TypeOf frame Is msforms.frame Then tablerowadd frame.Controls("krsName").Value, frame.Controls("krsMark").Value
Next frame

Public Function tablerowadd(krsName As String, krsmark As String) As Boolean
  krsRow = krsRow + 1
  With ActiveDocument.Tables(1)
     .Rows.Add
     .Cell(krsRow, 1).Range.Text = krsName
     .Cell(krsRow, 2).Range.Text = krsmark 
  End With
End Function

krsRow は公開整数変数です。

誰が私が間違っているのか教えてもらえますか?
デバッグすると、krsRow = 2,3,4などが出ました。
しかし、.Cell(krsRow, 2).Range.Text = krsmark常に1行目にテキストを追加します。
助けてください!

4

1 に答える 1