gpt4 book ai didi

excel - 使用 VBA 将 Lotus Notes 电子邮件正文导入 Excel 时,如何防止没有换行符的行被拆分?

转载 作者:行者123 更新时间:2023-12-04 20:02:41 26 4
gpt4 key购买 nike

我有一个 Excel VBA 程序,它将查找主题中包含特定文本的 Lotus Notes 电子邮件,并将正文导入 Excel 电子表格。
我可以找到电子邮件,并将数据导入 Excel。不幸的是,它似乎正在创建一个没有换行符的新行。
我注意到当我将正文剪切并粘贴到 Word 文档中并且文档处于纵向模式时,Excel 工作表中的中断与 Word 中的换行匹配。
如果我将 Word 更改为横向,它看起来像电子邮件。
将 Excel 工作表更改为横向没有效果。
我还尝试将拆分更改为相互独立地使用 vbCR 和 vbLf 而没有积极的结果。
我可以设置行长选项吗?如何将与电子邮件中的一行相关联的所有数据保留在 Excel 中的一行?

Sub LNExtract()

Dim NSession As Object 'NotesSession
Dim NMailDb As Object 'NotesDatabase
Dim NDocs As Object 'NotesDocumentCollection
Dim NDoc As Object 'NotesDocument
Dim NNextDoc As Object 'NotesDocument
Dim NItem As Object 'NotesItem
Dim view As String
Dim filterText As String

view = "Folder\SubFolder" 'Name of view or folder to retrieve documents from
filterText = "SubjectLineText" 'Optional text string to filter the view

Set NSession = CreateObject("Notes.NotesSession")
Set NMailDb = NSession.GETDATABASE("", "") 'Default server and database
If Not NMailDb.IsOpen Then
NMailDb.OPENMAIL
End If

Set NDocs = NMailDb.GETVIEW(view)
NDocs.Clear

'Apply optional filter

If filterText <> "" Then
NDocs.FTSEARCH filterText, 0
End If

Set NDoc = NDocs.GETFIRSTDOCUMENT
Do Until NDoc Is Nothing
Set NNextDoc = NDocs.GETNEXTDOCUMENT(NDoc)
Set NItem = NDoc.GETFIRSTITEM("Body")
If Not NItem Is Nothing Then
Lines = Split(NItem.Text, vbCrLf)
Range("A1").Resize(UBound(Lines) + 1, 1).Value = Application.WorksheetFunction.Transpose(Lines)
End If
Set NDoc = NNextDoc
Loop

End Sub

最佳答案

你在哪里 NItem.Text在您的代码中,我相当确定它给出了与 GetFormattedText 相同的结果NotesRichTextItem 的方法类,它限制了行的长度。相关文档在这里:
https://help.hcltechsw.com/dom_designer/9.0.1/appdev/H_GETFORMATTEDTEXT_METHOD.html
相比之下,GetUnformattedText方法不限制行长,所以如果替换 NItem.Text 应该会得到更好的结果与 NItem.GetUnformattedText() .

关于excel - 使用 VBA 将 Lotus Notes 电子邮件正文导入 Excel 时,如何防止没有换行符的行被拆分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67067218/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com