この質問は私の元の質問に関連しています
私はケンの提案に従おうとしています。したがって、元の値と最後に保存された値が同じである場合に、少なくともメッセージボックスをポップアップできるかどうかを確認したいだけです。これが私が設定したものです。
Global declaration
Dim originalValues(2) As Variant
Dim lastValues(2) As Variant
次に、queryopenで:
Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
' Current document
Dim doc As NotesDocument
Set doc = Source.Document
' Array containing original value
originalValues(0) = doc.QCR_No
originalValues(1) = doc.QCR_Mobile_Item_No
originalValues(2) = doc.QCR_Qty
End Sub
PostSave
Sub Postsave(Source As Notesuidocument)
' Current document
Dim doc As NotesDocument
Set doc = Source.Document
' Load fields value to the array
lastValues(0) = doc.QCR_No
lastValues(1) = doc.QCR_Mobile_Item_No
lastValues(2) = doc.QCR_Qty
' Compared each value in the array to see if there is any difference
Dim i As Integer
For i = 0 To 2
If lastValues(i) = originalValues(i) Then
Messagebox "Same", MB_OK
End If
Next
End Sub
さて、この行になると
lastValues(i)= originalValues(i)の場合
理由がわからない「TypeMismatch」というエラーが発生しました。コードをデバッグしましたが、配列の値はすべて同じです。配列にはVariantデータ型もあります。ここで何を間違えますか?