我正在创建一个 csv 文件,其中的一列包含图像的 url(例如,www.myDomain.com/myImage.jpg
)。
如何让 Excel 呈现此图像?
问问题
69703 次
3 回答
26
Dim url_column As Range
Dim image_column As Range
Set url_column = Worksheets(1).UsedRange.Columns("A")
Set image_column = Worksheets(1).UsedRange.Columns("B")
Dim i As Long
For i = 1 To url_column.Cells.Count
With image_column.Worksheet.Pictures.Insert(url_column.Cells(i).Value)
.Left = image_column.Cells(i).Left
.Top = image_column.Cells(i).Top
image_column.Cells(i).EntireRow.RowHeight = .Height
End With
Next
由于多年来 Excel 的行为显然发生了变化,您可能需要Insert
明确地为调用指定更多参数:
对于登陆这里的人。不同版本的Excel 处理这个请求的方式不同,Excel 2007 会将图片作为对象插入,即嵌入到工作簿中。Excel 2010 会将其作为链接插入,如果您打算将其发送给任何人,这将是一个糟糕的时期。您需要更改插入以指定它是嵌入的:
Insert(Filename:= <path>, LinkToFile:= False, SaveWithDocument:= True)
于 2011-06-10T22:53:55.527 回答
6
在 Google 表格上,您可以将IMAGE(url)方法添加到您的 CSV 文件中,它将被呈现(在 Google 表格上测试)。
这是一个例子:
=IMAGE("http://efdreams.com/data_images/dreams/lion/lion-03.jpg")
于 2017-04-30T09:04:35.250 回答
0
我有同样的问题。我的解决方案是:
- 将 csv 导入 Excel ,
- 从 excel复制表到 Google 表格
- 在 Google 表格中使用 =IMAGE("http://example.com/01.jpg") 列上您想要的图像。谷歌表格加载图片,
- 只需将所有内容复制回 Excel 即可。
在 excel 中,图像将是原始大小,但总是从适当的行开始,所以只需全选并更改所有图像的宽度或高度。如果仅按行的高度更改高度,则所有内容都已正确排序和定位。
于 2021-09-03T17:07:51.240 回答