从VBA发送电子邮件:将数组数据格式化为列

时间:2015-01-14 09:55:58

标签: excel vba email excel-vba

我正在VBA中进行一些编码,而且我对这一切都很陌生。我想使用存储在2D阵列中的信息发送电子邮件。目前,我只是发送:

Mr ABCD: 123456
Mr EFGHIJ: 789101112
etc...

其中Array(0,0)= Mr ABCD,Array(0,1)= 123456,鉴于格式不佳,它非常难看。我想让它看起来更具可读性,首先要确保所有数值都在相同的偏移量,即:

Mr ABCD:   123456
Mr EFGHIJ: 789101112
etc...

我尝试使用适当数量的空格缓冲每个名称字符串,但默认字体没有等效大小的字符,因此每个字符串的长度可能相同但大小不同。

那么,有没有办法将字符串对象设置为Courier的默认字体,以确保所有字符的大小相同?最好不要将数组复制到电子表格中。

另一个问题是,我如何将其最好地制作成具有与电子表格相同的网格格式的电子邮件,其中每个网格具有统一的大小?再一次,最好不要复制到电子表格中。谢谢!

1 个答案:

答案 0 :(得分:2)

你需要知道html并添加标签。所以一个基本的表,

<table>
<thead>
</thead>
<tbody>
<tr><td>cell1</td><td>cell2</td></tr>
<tr><td>cell1</td><td>cell2</td></tr>
</tbody>
</table>

您可以通过几种方式应用大量格式。我通常使用CSS。

这是我的硬盘驱动器中的一些随机示例。

<html>
<head>
<style>
TABLE       {font-size: 90%; text-align:left; margin-left:40pt;margin-right:10pt;background-color:lavender;width="90%"}
THEAD       {color: white;font-weight:bold;background-color:darkblue; margin-left:40pt;margin-right:10pt}
TD      {Vertical-Align:Top;cell-padding:3}
</style>
</head>
<body>
    <table>
    <thead>
    </thead>
    <tbody>
    <tr><td>cell1</td><td>cell2</td></tr>
    <tr><td>cell1</td><td>cell2</td></tr>
    </tbody>
    </table>
</body>
</html>