• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Imagecombobox

Status
Niet open voor verdere reacties.

pimcl

Gebruiker
Lid geworden
29 jun 2020
Berichten
35
Hi,

In mijn userform heb ik sinds vandaag een imagecombobox toegevoegd om een soort van stoplicht te creëren. Dit werkt in het userform goed, maar zodra ik de waarde weer uit mijn database wil halen opnieuw mijn userform in, dan gaat het fout. Bij het invoegen van de data uit de userform naar de database zal "Green", "Yellow" of "Red" in de cel worden gezet.

mijn code voor het ophalen van data uit de database naar mijn userform:


Dim fpath As String
fpath = "C:\User\Documents\Sales\Images"
Rowvalue = Sheets("Database").Range("Data_Start").Offset(TargetRow, 117).Text

Add_data.ImageCombo1.Text = LoadPicture(fpath & Rowvalue & ".jpg")

Mijn code voor het plaatsen van de info uit het userform naar de database:

Sheets("Database").Range("Data_Start").Offset(TargetRow, 117).Value = ImageCombo1.Text

Mijn code voor de dropdown list items:

With Me.ImageList1.ListImages '''Image directory'''
.Add , "Img1", LoadPicture("C:\User\Documents\Canline\Sales\Images\Green.jpg")
.Add , "Img2", LoadPicture("C:\User\Documents\Canline\Sales\Images\Yellow.jpg")
.Add , "Img3", LoadPicture("C:\User\Documents\Canline\Sales\Images\Red.jpg")
End With


Dim i As Integer ''' Loop through all 8 imageboxes and add images green, yellow and red to all 8 imageboxes
For i = 1 To 8
With Me.Controls("ImageCombo" & i)
.ImageList = ImageList1
.ComboItems.Add , , "Green", 1
.ComboItems.Add , , "Yellow", 2
.ComboItems.Add , , "Red", 3
End With
Next i



Ik neem aan dat hier geen voorbeeld bestand voor benodigd is, aangezien het waarschijnlijk om de code gaat.

Wat achtergrond info:
Userform name: Add_Data
Imagecombobox name: Imagecombo1
 
Ik snap nooit waarom een voorbeeld document altijd een probleem lijkt te zijn.
 
Bij een voorbeeld document moet je eerst zelf nadenken over hoe het geheel in elkaar steekt:d
 
Hoi, ik begrijp niet waarom een voorbeeld bestand het in dit geval makkelijker zou maken. De code staat er namelijk letterlijk. Het opknippen van een complex bestand kan er namelijk voor zorgen dat de codes niet werken of totaal niet representatief zijn naar het werkelijke bestand.

Heeft iemand een oplossing?
 
Er wordt niet voor niets om gevraagd.
Maar goed, dan niet.
 
Zolang je de vraag van edmoor niet begrijpt heb ik er een hard hoofd in.
 
#4 kan je ook nog eens begrijpend proberen te lezen. #2 ook gemist?
 
Zou iemand me hiermee kunnen helpen? Code tags:

mijn code voor het ophalen van data uit de database naar mijn userform:

Code:
Dim fpath As String
fpath = "C:\User\Documents\Sales\Images"
Rowvalue = Sheets("Database").Range("Data_Start").Offset(TargetRow, 117).Text

Add_data.ImageCombo1.Text = LoadPicture(fpath & Rowvalue & ".jpg")

Mijn code voor het plaatsen van de info uit het userform naar de database:

Code:
Sheets("Database").Range("Data_Start").Offset(TargetRow, 117).Value = ImageCombo1.Text

Mijn code voor de dropdown list items:

Code:
With Me.ImageList1.ListImages '''Image directory'''
.Add , "Img1", LoadPicture("C:\User\Documents\Canline\Sales\Images\Green.jpg")
.Add , "Img2", LoadPicture("C:\User\Documents\Canline\Sales\Images\Yellow.jpg")
.Add , "Img3", LoadPicture("C:\User\Documents\Canline\Sales\Images\Red.jpg")
End With


Code:
Dim i As Integer ''' Loop through all 8 imageboxes and add images green, yellow and red to all 8 imageboxes
For i = 1 To 8
With Me.Controls("ImageCombo" & i)
.ImageList = ImageList1
.ComboItems.Add , , "Green", 1
.ComboItems.Add , , "Yellow", 2
.ComboItems.Add , , "Red", 3
End With
Next i
 
Laatst bewerkt:
Het gebvruik van een ImageComboBox is niet erg gebruikelijk.
Waarom niet eenvoudig een raam met grafische keuzerondjes ?
Maar om op zo'n omslachtige manier de tekst rood/geel of groen in een cel te zetten vind ik een mijl op zeven.
Daarvoor kun je beter een datavalidatieregel gebruiken.
 

Bijlagen

Laatst bewerkt:
Hi Snb,

Bedankt voor je uitleg. Je advies is dus om geen gebruik te maken van een image combobox maar van een normale combobox of van optionbuttons. ik wilde namelijk eigenlijk wat visueels in de combobox. Niet noodzakelijk, maar puur voor het oog.

ik zal de image combo weggooien. Bedankt
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan