从此如何:http://chandoo.org/wp/2012/04/02/using-excel-as-your-database
如果我在每个数据中添加图片(超链接或评论),我可以用图片显示数据吗??
答案 0 :(得分:0)
我想,你没有直接的方法在Excel中使用SQL来使用Pics。
但是可以选择从文件夹粘贴Pics。
使用SQL创建请求并获取表格中每张图片的完整路径,例如:
'C:\用户\ Usermname \图片\ 1.png'
=>
使用VBA代码将图片粘贴到表格中:
Option Explicit
Sub test()
Dim i
Call KillAllPics("Sheets1")
For i = 1 To 7
Call InsertPics(Range("B1").Offset(i - 1, 0), _
Range("A1").Offset(i - 1, 0).Value, 100)
Next i
End Sub
Sub KillAllPics(SheetName As String)
Dim Shape As Shape
For Each Shape In Sheets(SheetName).Shapes
If Shape.Type = 13 Then Shape.Delete
Next Shape
End Sub
Sub InsertPics(rng As Range, link As String, heigth As Integer)
' rng -- where to paste image
' link -- text link with image
' heigth -- change heigth of cell with picture
If Dir(link) <> "" Then
rng.RowHeight = heigth
Dim L, T, W, H
Dim objImage
With rng
T = .Top + 2
H = .Height * 0.95
L = .Left + 2
End With
Set objImage = CreateObject("WIA.ImageFile")
objImage.LoadFile link
W = objImage.Width * (H / objImage.Height)
If W > rng.Width Then
W = rng.Width * 0.95
H = objImage.Height * (W / objImage.Width)
End If
ActiveSheet.Shapes.AddPicture link, False, True, L, T, W, H
End If
End Sub
此代码首先从WorkSheet中删除旧图片,然后将图片粘贴到单元格中。它也适合每张图片,并将其调整为“细胞大小”。