Gå til innhold

Excel VBA: Hvordan bruke bilde i "comment"?


Anbefalte innlegg

Hei,

 

jeg holder på å lage en enkel database (se vedlegg database.png).

 


Private Sub UserForm_Initialize()
   Dim ws As Worksheet
   Dim LR As Long
   Dim Cell As Range
   Dim List As New Collection
   Dim Item As Variant
   Set ws = ActiveSheet
   With ws
    LR = .Cells(.Rows.Count, 1).End(xlUp).Row
    For Each Cell In .Range("A2:A" & LR)
	    With Cell
		    On Error Resume Next
		    List.Add .Text, CStr(.Value)
		    On Error GoTo 0
	    End With
    Next Cell
    For Each Item In List
	    ComboBox1.AddItem Item
    Next Item
   End With
End Sub
Private Sub ComboBox1_Change()
   Dim ws As Worksheet
   Dim LR As Long
   Dim Cell As Range
   Dim List As New Collection
   Dim Item As Variant
   Set ws = ActiveSheet
   With ws
    LR = .Cells(.Rows.Count, 1).End(xlUp).Row
    ComboBox2.Clear
    For Each Cell In .Range("A2:A" & LR)
	    With Cell
		    If .Text = ComboBox1.Value Then
			    On Error Resume Next
			    List.Add .Offset(0, 1).Text, CStr(.Offset(0, 1).Value)
			    On Error GoTo 0
		    End If
	    End With
    Next Cell
    For Each Item In List
	    ComboBox2.AddItem Item
    Next Item
   End With
End Sub
Private Sub ComboBox2_Change()
   Dim ws As Worksheet
   Dim LR As Long
   Dim Cell As Range
   Dim List As New Collection
   Dim Item As Variant
   Set ws = ActiveSheet
   With ws
    LR = .Cells(.Rows.Count, 1).End(xlUp).Row
    ComboBox3.Clear
    For Each Cell In .Range("A2:A" & LR)
	    With Cell
		    If .Text = ComboBox1.Value Then
			    If .Offset(0, 1).Text = ComboBox2.Value Then
				    On Error Resume Next
				    List.Add .Offset(0, 2).Text, CStr(.Offset(0, 2).Value)
				    On Error GoTo 0
			    End If
		    End If
	    End With
    Next Cell
    For Each Item In List
	    ComboBox3.AddItem Item
    Next Item
   End With
End Sub
Private Sub ComboBox3_Change()
   Dim ws As Worksheet
   Dim LR As Long
   Dim Cell As Range
   Dim List As New Collection
   Dim Item As Variant
   Dim objComment As Comment
   Set ws = ActiveSheet
   With ws
    LR = .Cells(.Rows.Count, 1).End(xlUp).Row
    ComboBox4.Clear
    For Each Cell In .Range("A2:A" & LR)
	    With Cell
		    If .Text = ComboBox1.Value Then
			    If .Offset(0, 1).Text = ComboBox2.Value Then
				    On Error Resume Next
				    List.Add .Offset(0, 3).Text, CStr(.Offset(0, 3).Value)
				    On Error GoTo 0
			    End If
		    End If
	    End With
    Next Cell
    For Each Item In List
	    ComboBox4.AddItem Item
    Next Item
   End With
End Sub

 

Sluttresultatet skal bli som vist i bilder "User form.png".

Er det noen som vet hvordan man får bildet i "Comment" på celle D2, til å vises som på bildet "User Form.png"? Foreløpig får jeg kun celleverdiene til å fungere.

 

Håper dette var godt nok forklart.

 

Setter stor pris på hjelpen jeg kan få!

post-206048-0-56750700-1363942281_thumb.png

post-206048-0-53235600-1363942363_thumb.png

Lenke til kommentar
Videoannonse
Annonse

Jeg er rimelig sikker på at du ikke kan hente bilder ut av comments. Det er fiklete nok å få dem inn dit.

 

Beste hislen Harald

 

Det har du sikkert rett i. Hva med en alternativ løsning med hyperlink? Se vedlagte bilder. Noen som kan hjelpe med kode for å lage dette?

post-206048-0-27350800-1363966045_thumb.png

post-206048-0-74340200-1363966055_thumb.png

Lenke til kommentar

LItt usikker på spørsmålet her. Men se om ikke disse setter deg på sporet av noe. Ha hyperlenke til bildefiler i E3 og E4, og sett inn en Image1 kontroll i userformen:

 

Private Sub CommandButton1_Click()

MsgBox "Bildefil:"

Me.Image1.Picture = LoadPicture("C:\Temp\Fiskeboller-image-asko1.jpg")

MsgBox "Gå til hyperlenke:"

ActiveWorkbook.FollowHyperlink ActiveSheet.Range("E4").Hyperlinks(1).Address

MsgBox "Les adresse fra hyperlenke:"

Me.Image1.Picture = LoadPicture(ActiveSheet.Range("E3").Hyperlinks(1).Address)

End Sub

Endret av Harald Staff
Lenke til kommentar

LItt usikker på spørsmålet her. Men se om ikke disse setter deg på sporet av noe. Ha hyperlenke til bildefiler i E3 og E4, og sett inn en Image1 kontroll i userformen:

 

Private Sub CommandButton1_Click()

MsgBox "Bildefil:"

Me.Image1.Picture = LoadPicture("C:\Temp\Fiskeboller-image-asko1.jpg")

MsgBox "Gå til hyperlenke:"

ActiveWorkbook.FollowHyperlink ActiveSheet.Range("E4").Hyperlinks(1).Address

MsgBox "Les adresse fra hyperlenke:"

Me.Image1.Picture = LoadPicture(ActiveSheet.Range("E3").Hyperlinks(1).Address)

End Sub

 

Hei! Takker for svar!

 

Tanken var at brukeren skal kunne trykke på en knapp "Description" som åpner hyperlinken angitt i celle E2, E3, E4 osv. Det vil si at "Description"-knappen endrer hyperlink etter hva brukeren angir i ComboBoxene. Håper det var mer forståelig :)

 

post-206048-0-17325000-1364213671_thumb.png

Endret av Word
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...