在excel中将单元格字符串与图片数据库匹配的单元格选择显示图片

时间:2015-04-30 17:01:31

标签: excel vba excel-vba

我将尝试尽我所能解释我所寻找的最终产品。我正在尝试制作一个包含列中字符串列表的电子表格。

当字符串悬停时,字符串将用于匹配数据库中图片的名称。数据库将返回图片并将其显示为翻转图像。

我已经搜索了如何执行此操作的方法,但我一直在寻找根据注释更改它的人,并为每个单元格使用静态图像。我有一个大约23000张图片的数据库,不能一次一个地手动完成,并且单元格可能会根据打开的图纸而变化。

然而,没有必要将鼠标悬停在上面。在选择细胞时,我会非常乐意这样做。

1 个答案:

答案 0 :(得分:0)

这是一个广泛的问题,涉及很多部分。这是一些让你入门的东西。

Alt + F11 打开VB编辑器。右键单击要存在此功能的工作表,然后单击“查看代码”。此代码会将带有单个图像的注释(确保将C:\YOUR_IMAGE_FULL_PATH更改为有效图像)加载到您单击的任何单元格中。当您离开单元格时,它将删除评论。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Target.Cells.Count = 1 Then

        Static cellAddress
        Dim sFile As String
        Dim cmt As Comment

        If cellAddress <> "" Then
            Set cmt = Range(cellAddress).Comment
            cmt.Delete
            Set cmt = Nothing
        End If

        sFile = "C:\YOUR_IMAGE_FULL_PATH"

        Set cmt = Target.AddComment
        cmt.Text Text:=""
        With cmt.Shape
            .Fill.UserPicture sFile
        End With

        cellAddress = Target.Address

    End If

End Sub

当你说

  

数据库将返回图片并将其显示为翻转图像

这是否意味着图像本身存储在数据库中?或者是从数据库返回的图像的名称,我们必须在HDD上的目录中搜索具有该名称的图像?

如果不了解您的DBMS或您的表架构或类似内容,我可以提供更多帮助。