使用VBA设置Lotus Notes部分边框

时间:2011-05-10 17:01:47

标签: vba lotus-notes

我正在使用VBA创建从Excel电子表格填充的Lotus电子邮件,而且我仍然处于一个非常愚蠢的角色​​。

当我在笔记中创建新版块时,业务规则要求我为其添加边框。他们多年来一直在手动执行此操作,并习惯于从Notes UI执行此操作。他们创建一个新的部分,然后转到其属性,然后将其更改为具有边框(请参阅此screenshot中属性窗口中的边框和样式部分。)

我无法弄清楚如何通过VBA添加此边框。有任何想法吗?我尝试过更改TitleStyle,但这只会影响字体和颜色等内容。我做了其他一切,只是卡在边境上!

谢谢!

麦克

2 个答案:

答案 0 :(得分:2)

遗憾的是,NotesRichTextSection类没有给你任何改变边框的方法。通过API不能很好地支持Lotus Notes中的富文本项,因此通常您会发现在客户端上可以执行的操作与在代码中可以执行的操作之间不匹配。

如果你想尝试它,可能会有一个解决方法。首先,您需要在Notes中创建一个具有富文本字段的简单表单,我们将其称为Body,由一个部分包围。根据需要设置要显示的部分,使用边框设置等。您还需要另一个名为Title的隐藏文本字段,并且您将根据该标题字段设置要计算的部分标题。

然后在您的VBA代码中,您将基于该表单创建一个新的NotesDocument。您将设置“标题”字段,并将内容添加到“正文”富文本项中。然后,您需要调用ComputeWithForm方法,然后调用Save方法。最后,您可以在文档上使用RenderToRTItem方法将整个文档放入原始注释的富文本字段中。合理?

无法保证VBA能够正常运行,但我过去使用LotusScript做过类似的事情,并且它可以解决这个问题。

答案 1 :(得分:1)

您可以使用Borders()属性设置要复制的单元格的边框。

示例:

Range("B2:C4").Borders.LineStyle = xlDash
Range("B2:C4").Borders(xlEdgeBottom) = RGB(255,0,0)