感谢这里的某个人,我终于有了一个工作循环......几乎:)它大部分时间都可以工作,但在某些情况下,会出现这个错误。
编码:
procedure TLetters.ReplaceDate(NewDate: String);
var I : Integer;
    ARegion : OleVariant;
    FieldType : Integer;
    FieldCount : Integer;
begin
    FieldCount := WordApp.ActiveDocument.Fields.Count;
    For I := 1 to FieldCount do
    Begin
         FieldType := WordApp.ActiveDocument.Fields.Item( I ).type;
         If FieldType IN [ 31,32 ] Then
         Begin
               ARegion := WordApp.ActiveDocument.Fields.Item( I ).Code;
               WordApp.ActiveDocument.Fields.Item( I ).Cut;
               ARegion.Text := NewDate;
         End;
    End;
end;
上面代码的问题是,有时 Count 会返回 2,但是当我尝试检查第二个条目时,它会在 subject 中输出异常。
难道只是我必须做一个 Count -1 而不是 Count 吗?