excel - 如何根据 ComboBox 文本插入图像?
问题描述
我试图编写用于在 excel 中插入和更改用户表单内的图像的 vba 代码,但我无法插入以及更改基于组合框的图像,要在组合框中插入值我已经添加如图所示的行源(水果列表)并插入我保存在特定文件夹中的图像,您可以在我的程序中找到该文件夹。
pl。任何人都可以在这个程序中纠正我或帮助我解决这个问题,以便我可以在用户表单的图像框中获取图像。
我试过下面的程序
Private Sub UserForm_Change()
Dim k As Long, kl As Long, wa As Worksheet
Dim fg As String
fg = "C:\Users\mehta\Desktop\Folder for ppt images\New folder\Apple.jpg"
If Right(fg, 1) <> "\" Then
fg = fg & "\"
End If
Set wa = Sheets("Sheet1")
kl = wa.Range("A" & Rows.Count).End(xlUp).Row
For k = 1 To kl
Me.ComboBox2.AddItem wa.Cells(k, "A").Value
Next k
End Sub
Private Sub ComboBox2_Change()
Dim k As Long, kl As Long, wa As Worksheet
Dim fg As String
fg = "C:\Users\mehta\Desktop\Folder for ppt images\New folder"
If Right(fg, 1) <> "\" Then
fg = fg & "\"
End If
Set wa = Sheets("Sheet1")
kl = wa.Range("A" & Rows.Count).End(xlUp).Row
For k = 1 To kl
If Val(Me.ComboBox2.Value) = wa.Cells(k, "A").Value Then
Me.Image1.Picture = LoadPicture(fg & ".JPG")
End If
Next k
End Sub
欢迎任何积极的回应。还有PL。找到我要演示的图像。
[带有组合框和图像框的用户表单][1]
[桌面文件夹包含文件夹中的图像][1]
解决方案
试试这两个
Private Sub ComboBox2_Change()
Dim k As Long, kl As Long, wa As Worksheet, fg As String
fg = "C:\Users\mehta\Desktop\Folder for ppt images\New folder\"
Set wa = Sheets("Sheet1")
kl = wa.Range("A" & Rows.Count).End(xlUp).Row
For k = 1 To kl
If Me.ComboBox2.Value = wa.Cells(k, "A").Value Then
Me.Image1.Picture = LoadPicture(fg & ComboBox2.Value & ".JPG")
End If
Next k
Me.Repaint
End Sub
Private Sub UserForm_Activate()
Dim k As Long, kl As Long, wa As Worksheet
Set wa = Sheets("Sheet1")
kl = wa.Range("A" & Rows.Count).End(xlUp).Row
For k = 1 To kl
Me.ComboBox2.AddItem wa.Cells(k, "A").Value
Next k
End Sub
您在解决 Pic 时缺少 ComboBox2.Value 您还有一个 Val() 函数,但没有帮助