こんにちは、みんな私は問題を抱えています:
ユーザーがms wordでテーブルに渡される行を追加できるフォームがあります
- すべてのフォームを循環して行を追加するとき、関数を呼び出します
- MS WORD ドキュメントの表に新しい行を挿入します (テンプレートから)
- セルにテキストを追加しようとすると、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行目にテキストを追加します。
助けてください!