0
任何人都可以帮助我使此代码可行吗?将Excel内容转换为HTML(从Excel创建HTML文件)
这里的想法是收集一行信息在不同的行上,并将这些信息一起插入到一个html文件中。
在代码中的一些特殊待遇时,我会很感谢你:
1)使其工作8P; 2)某种方式让用户选择他将要保存文件的地方,如普通的保存窗口(如果不可能,至少让他选择指定文件夹中文件的名称);和3)确保代码捕获行上所有非空行。
非常感谢社会各界的关注!
我想到的是波纹管。
Sub CreateHTML()
'Define your variables.
Dim iRow As Long
Dim iStage As Integer
Dim iCounter As Integer
Dim iPage As Integer
'Create an .htm file in the assigned directory.
Dim sFile As String
sFile = "J:\GEROC1\Avaliação RO\4) CICLOS\ArquivosExportados" & "\test.html"
Close
'Open up the temp HTML file and format the header.
Open sFile For Output As #1
Print #1, "<html>"
Print #1, "<head>"
Print #1, "<style type=""text/css"">"
Print #1, "table {font-size: 16px;font-family: Optimum, Helvetica, sans-serif;Border -collapse: collapse}"
Print #1, "tr {border-bottom: 1px solid #A9A9A9;}"
Print #1, "td {padding: 4px; margin: 3px; padding-left: 20px; width: 75%; text-align: justify;}"
Print #1, "th { background-color: #A9A9A9; color: #FFF; font-weight: bold; font-size: 28px; text-align: center;}"
Print #1, "</style>"
Print #1, "</head>"
Print #1, "<body>"
Print #1, "<table class=""table""><thead><tr class=""firstrow""><th colspan=""2"">Ficha de Risco</th></tr></thead><tbody>"
'Start on the 2nd row to avoid the header.
iRow = 2
'Translate the first column of the table into the first level of the hierarchy.
Do While WorksheetFunction.CountA(Rows(iRow)) > 0
If Not IsEmpty(Cells(iRow, 23)) Then
For iCounter = 1 To iStage
'Print #1, "</ul>"
iStage = iStage - 1
Next iCounter
Print #1, Cells(iRow, 1).Value
iPage = iPage + 1
If iStage < 1 Then
iStage = iStage + 1
End If
End If
Loop
'Add ending HTML tags
Print #1, "</body>"
Print #1, "</html>"
Close
End Sub
您不在循环中添加任何HTML。你需要在表格中添加'tr'和'td'。 – Patrick
Ops我忘了提及...他正在打印的单元格已经有tr和td语句... – PunchTheNewbie