2012-07-31 73 views
0

我想隐藏电子表格与数百个图像路径到HTML页面。例如:传输图像路径从Excel电子表格到HTML文件

excel sheet 
imageId imagePath 

1   images/ima1 
2   images/ima2 
3   images/ima3 
...   ......... 
...   ........ 

有没有更快的方法将这些图像转换为html文件,而不是一键输入1?

我需要的HTML文件是这样的:

<img src=images/ima1 title='ima1' /> 
<img src=images/ima2 title='ima2' /> 
<img src=images/ima3 title='ima3' /> 

感谢您的帮助。

回答

1

有几种方法可以做你想做的事。

1。在另一个工作表上,创建一个公式,该公式将从第一张表中获取信息并生成所需的HTML。

="<img src=" & CHAR(34) & INDIRECT("Sheet1!B" &ROW()) & CHAR(34) & " title=" & CHAR(34) & INDIRECT("Sheet1!A" & ROW()) & " />" 

假设您的数据位于Sheet1上,第二张纸上的每一行(包含该公式)将包含Sheet1上同一行的html。 (如果不相同,您需要调整表名和列)

这样做,您可以复制粘贴第二张表中的所有内容。

2。使用宏来生成文件。

Public Sub GenerateHTML() 
    Dim Handle As Integer 
    Dim Sheet As Worksheet 
    Dim Row As Integer 

    Set Sheet = ThisWorkbook.ActiveSheet 
    Row = 2 

    Handle = FreeFile() 

    Open "output.html" For Output As Handle 

    Print #Handle, "<html>" & vbNewLine & "<head>" & vbNewLine & "<title>My Gallery...</title>" & vbNewLine & "</head>" & vbNewLine & "<body>" 

    Do 
     If Sheet.Cells(Row, 1) = "" Then 
      Exit Do 
     Else 
      Print #Handle, "<img src=" & Chr(34) & Sheet.Cells(Row, 2) & Chr(34) & " title=" & Chr(34) & "ima" & Sheet.Cells(Row, 1) & Chr(34) & "/>" 
      Row = Row + 1 
     End If 
    Loop 

    Print #Handle, "</body>" & vbNewLine & "</html>" 

    Close #Handle 

    End Sub 

本示例将在与包含所有链接的电子表格相同的目录中创建一个html文件。您需要调整它以适应您的需求,因为它可能不太正确。

1

我会在下一列创建一个公式。假设图片/ ima1在B2中,这可能是你可以放入C2来获取你想要的内容,然后粘贴公式。

="<img src="&B2&" title='"&RIGHT(B2,LEN(B2)-4)&"' />" 
相关问题