如何在VBA代码中添加表格样式以实现预期显示效果
需求:调整VBA生成的HTML表格样式以匹配目标效果
我需要修改VBA代码中的表格样式,使生成的HTML表格达到目标样式效果,但目前修改后生成的表格未达到预期。以下是相关代码:
生成表格的函数代码
Private Function getItems(lb As MSForms.ListBox) As String Dim row, col As Long Dim i As String, items As String Dim total As Double '检查列表框是否为空 If Me.ListboxResult.ListCount = 0 Then getItems = "" Exit Function End If '表格结构 items = "<table border='1' style='width: 50%'><tr><th style = 'text-align:left;'>Type</th><th style = 'text-align:left;'>Item</th><th style = 'text-align:left;'>Quantity</th><th style = 'text-align:left;'>Unit</th></tr>" With lb total = 0 For row = 0 To .ListCount - 1 i = "<tr>" '添加每行的单元格 i = i & "<td style= 'border: 1px solid black; border-collapse: collapse' >" & .Column(0, row) & "</td>" i = i & "<td style= 'border: 1px solid black; border-collapse: collapse;'>" & .Column(1, row) & "</td>" i = i & "<td style='border: 1px solid black; text-align: right; border-collapse: collapse'>" & .Column(2, row) & "</td>" i = i & "<td style='border: 1px solid black; border-collapse: collapse'>" & .Column(3, row) & "</td>" i = i & "</tr>" '结束行 items = items & i i = "" total = total + CDbl(.Column(2, row)) Next row i = "<tr><td style='border: none; border-collapse: collapse'></td><td style='border: none; border-collapse: collapse'></td><td style='text-align: right; border: 1px solid black; border-collapse: collapse'> <b>Total:</b> " & CStr(total) & "</td></tr>" items = items & i End With items = items & "</table>" getItems = items End Function
发送邮件的代码
Private Sub submit(ByVal items As String) '发送邮件 Dim EmailApp As Outlook.Application Dim EmailItem As Outlook.MailItem Dim Source As String Set EmailApp = New Outlook.Application '直接创建新实例,需引用Outlook对象库 'Set EmailApp = CreateObject("Outlook.Application") '创建Outlook应用新实例,无需环境引用 Set EmailItem = EmailApp.CreateItem(olMailItem) With EmailItem .To = "abc@email.com" .Subject = "Stationery Request" '.Body = "请参考以下订购详情:" & vbNewLine & vbNewLine & items & vbNewLine & vbNewLine & "总计: " & Me.TxtboxTotal.Value '.HTMLBody = "尊敬的xxx,<br><br>" & vbNewLine & "请参考以下订单详情:<br><br>" & items & "<br> <br> 此致, <br>" & "姓名" .HTMLBody = "请参考以下订单详情:<br><br>" & items 'Source = ThisWorkbook.FullName '.Attachments.Add Source .Display '.Send End With End Sub
内容的提问来源于stack exchange,提问作者user22924278
相关产品推荐
相关产品推荐

