我用过的有两种:
1. 将 Excel 存成 .wk4 (Lotus 1-2-3) 格式 再用 Lotus 的 Import 功能导入到 View 中. 这种方法比较简单.
2. 用 LotusScript 程序来实现,例如:

Sub Initialize

Dim workspace As New NotesUIWorkspace
Dim session As New NotesSession
Dim db As NotesDatabase
Dim sheet
Dim view As NotesView
Dim viewall As NotesView
Dim cview As NotesView
Dim doc As NotesDocument
Dim cdoc As NotesDocument
Dim nextdoc As NotesDocument
Dim docall As NotesDocument
Dim f0, f1, f2, f3 As String
Dim rate As Double
Dim tr , tc As Variant
Dim files As Variant
Dim xls As Variant
Dim xlsfile As String

Set db=session.CurrentDatabase

files = workspace.OpenFileDialog(False, "Select excel sheet document", "Microsoft Excel Worksheets|*.xls|All Files|*.*")
If Isempty(files) Then
Messagebox "Nothing selected, import will be terminated.", 64, "ATTENTION"
Exit Sub
Else
Forall filelist In files
xlsfile = xlsfile & filelist
End Forall
End If

Set xls=GetObject(xlsfile,"")
Set sheet = xls.Worksheets(1)
tr = sheet.UsedRange.Cells.SpecialCells(11).Row
tc = sheet.UsedRange.Cells.SpecialCells(11).Column

If tc <> 15 Or tr <= 1 Then
Messagebox "Selected worksheet can not be imported.", 16, "ATTENTION, DATA IS MISSING OR INCORRECT..."
Exit Sub
End If
e = 0
cr = 0
up = 0
Set viewall = db.GetView("ALL01")
Call viewall.refresh
Set docall = viewall.GetFirstDocument

While Not ( docall Is Nothing )
e = e + 1
Set nextdoc = viewall.GetNextDocument( docall )
docall.ACT_Qty= 0
docall.For_Amt=0
docall.For_Qty=0
Call docall.ComputeWithForm( False, False )
Call docall.save(True,True, True)
Set docall = nextdoc
Print "Documents Reset: " & Cstr(e)
Wend

Set view = db.GetView("BSK")
Call view.refresh
Set cview = db.GetView("XRate")
Call cview.refresh

For r = 2 To tr
f1 = sheet.range("C"+Ltrim(Str$(r))).value
f2 = sheet.range("D"+Ltrim(Str$(r))).value
f3 = sheet.range("G"+Ltrim(Str$(r))).value
key$ = Cstr(f1) + "@@@" + Cstr(f2) + "@@@" + Cstr(f3)

Set doc = view.GetDocumentByKey(key$, True)

If doc Is Nothing Then

cr = cr + 1
Set doc = db.CreateDocument()
doc.Form = "Budget Sheet"
doc.Section = sheet.range("A"+Ltrim(Str$(r))).value
doc.SalesPerson = sheet.range("B"+Ltrim(Str$(r))).value
doc.SalesPersonNo = sheet.range("C"+Ltrim(Str$(r))).value
doc.CustCode = sheet.range("D"+Ltrim(Str$(r))).value
doc.Customer = sheet.range("E"+Ltrim(Str$(r))).value
doc.BudgetUnit = sheet.range("F"+Ltrim(Str$(r))).value
doc.Description = sheet.range("G"+Ltrim(Str$(r))).value
'doc.CustCode = custcode
'doc.ProductCode = Ucase(sheet.range("H"+Ltrim(Str$(r))).value) & " (" & Cstr(custcode) & ")"
doc.ProductCode = sheet.range("H"+Ltrim(Str$(r))).value
doc.OCStateCode = sheet.range("I"+Ltrim(Str$(r))).value
doc.BU = sheet.range("J"+Ltrim(Str$(r))).value
doc.OCStateCode = sheet.range("K"+Ltrim(Str$(r))).value
doc.ProductType = sheet.range("L"+Ltrim(Str$(r))).value
doc.ACT_Qty = sheet.range("M"+Ltrim(Str$(r))).value
doc.ACT_Amt= sheet.range("N"+Ltrim(Str$(r))).value
Call doc.ComputeWithForm( False, False )
Call doc.save(True,True, True)
Else
up = up + 1
t_rate = doc.xRate(0)
If t_rate = "" Then
rate = 1
Else
rate = Cdbl(t_rate)
End If
doc.ACT_Qty = Cdbl(sheet.range("M"+Ltrim(Str$(r))).value)
doc.ACT_Amt = Cdbl(sheet.range("N"+Ltrim(Str$(r))).value) / rate
Call doc.ComputeWithForm( False, False )
Call doc.save(True,True, True)
End If
Print "Records Updated: " & Cstr(up) & " - Records Created: " & Cstr(cr)
Next

Out:
Messagebox "Import done successfully." & Chr(13) & _
"Reset : " & Cstr(e) & Chr(13) & _
"Updated : " & Cstr(up) & Chr(13) & _
"Created : " & Cstr(cr) & Chr(13) ,64, "IMPORT"
Set xls = Nothing
Set sheet = Nothing

End Sub