从单词表

时间:2017-10-22 07:40:11

标签: ms-word word-vba

我想根据列的最后一行中的值编辑几个单词表。如果最后一行中的值超过20,我想删除列内容(指定列的最后一行除外)。

我使用过. Range. Text,但我的实施遇到了挑战。我有这个

For i = 3 To . Columns. Count

If   ActiveDocument.Tables(i).Cell(ActiveDocument. Tables(i).Rows.Count, i).Range.Text >20 Then ...

如何让VBA返回单元格的内容而不是字符串,而是作为计算的整数。

1 个答案:

答案 0 :(得分:0)

VBA的VAL()函数会将包含数值的字符串转换为数字。该函数从左侧开始并识别数字,直到遇到非数字字符并忽略后面的所有内容。对于从表格单元格中获取的文本非常有用,因为文本中包含的End-Of-Cell标记将被忽略。

Dim C As Long

For C = 1 To 3
    With ActiveDocument.Tables(1)
        If Val(.Rows.Last.Cells(C).Range.Text) > 20 Then
            Debug.Print "Delete rows above"
        End If
    End With
Next C