Userform uitbreiden met foto

Status
Niet open voor verdere reacties.

Offthefield

Gebruiker
Lid geworden
27 apr 2005
Berichten
369
Ik ben bezig een bestaand programma uit te breiden met een foto, normaal
werkt deze macro goed, maar op een of andere manier pakt deze niet?

Het bedoeling is dat T_12.text met de foto match en deze in de userform (Foto1) komt te staan,
alleen hier niet, maar waarom?

Heeft iemand een idee waarom dit niet werkt of er een andere alternatief!

Alvast bedankt voor de reactie.
 

Bijlagen

  • PLANNING2708.xls
    47,5 KB · Weergaven: 35
  • C11.jpg
    C11.jpg
    23,4 KB · Weergaven: 55
  • C12.jpg
    C12.jpg
    10,5 KB · Weergaven: 37
En hoe met T_12 dan gevuld worden? Het is een tekstvak voor werkuren dus je verwacht daar een getal, geen naam van een foto.
 
Wat Octafish zegt.
En je hebt wel een map met de naam C:\Users\Videos ?
 
1. Het veld T_12 is een tekstveld, alleen ik heb per abuis de label omschrijving laten staan
2. C:\Users\Videos bestaat, bij het origineel staat er alleen een naam tussen, maar voor privacy heb ik die weggelaten
 
Ik heb om te testen uiteraard het pad aangepast (naar ActiveWorkbook.Path) en alles bij elkaar gezet, en als ik een fotonaam handmatig intyp, dan komt de foto keurig tevoorschijn. Dus wat is nu je probleem?
 
Ik heb de macro getest met de volgende 2 optie, met direct de fotonaam, ook hier verschijnt er geen foto

Foto1.Picture = LoadPicture("c:\Users\XXX\Videos" & C11.jpg)

Foto1.Picture = LoadPicture(ActiveWorkbook.Path & "c:\Users\XXX\Videos" & C11.jpg)

Zoals je in de macro ziet, heb ik nog andere opties geprobeerd, ook hier verschijnt geen foto

Code:
Sub M_selektie()
   sn = Db_00.List
   
   For j = 0 To UBound(sn)
     If C_01 = "" Then c00 = sn(j, 3)
     If C_02 = "" Then c00 = sn(j, 2)
     If C_01 <> "" And C_02 <> "" Then c00 = sn(j, 2) & sn(j, 3)
     If c00 = C_01 & C_02 Then c01 = c01 & " " & j + 1
   Next
   


   ListBox1.Clear
   If c01 <> "" Then ListBox1.List = Application.Index(sn, Application.Transpose(Split(Trim(c01) & " ")), [transpose(row(1:12))])
   
On Error GoTo FotoError
''Foto1.Picture = LoadPicture("c:\Users\XXX\Videos\" & T_12.Text & ".jpg")
''Foto1.Picture = LoadPicture("c:\Users\XXX\Videos\" & C11.jpg)
''Foto1.Picture = LoadPicture(ActiveWorkbook.Path & "c:\Users\XXX\Videos\" & T_12.text & ".jpg")
Foto1.Picture = LoadPicture("c:\Users\XXX\Videos\" & C11.jpg)
''Foto1.Picture = LoadPicture(ActiveWorkbook.Path & "c:\Users\XXX\Videos\" & C11.jpg)

FotoError:
If Err = 53 Then
    MsgBox "ONDERWERP heeft GEEN FOTO, Druk op OK"
    Foto1.Picture = StdFunctions.LoadPicture("")
End If


End Sub

Is de postitie van foto1.picture nog belangrijk?
 
Haal die On Error er eens uit en vertel dan welke foutmelding je krijgt.
Zoals het er nu staat is het in ieder geval fout.
Maak er dan dit van als het plaatje C11.jpg heet:
Code:
Foto1.Picture = LoadPicture("C:\Users\XXX\Videos\C11.jpg")
 
Laatst bewerkt:
EdMoor,

Zoals je al zei, als ik de On Error weghaal komt foto C11 netjes in Foto1,

dus toen dacht ik verander de regel in :

Foto1.Picture = LoadPicture("c:\Users\XXX\Videos" & T_12.Text & ".jpg") om hem te laten zoeken op veld T_12
waar alle fotonamen in staan (om te testen heb ik er maar 2), maar dan komt de volgende melding :

(deze komt al bij het gebruiken van de 1e combobox)
Fout 53 tijdens uitvoering : Kan het bestand niet vinden
 
interpretatie.
 
Laatst bewerkt:
Dat lijkt me een duidelijke melding.
En hier mis je een \ teken:
Code:
Foto1.Picture = LoadPicture("c:\Users\XXX\Videos[COLOR="#FF0000"]\[/COLOR]" & T_12.Text & ".jpg")
 
Maar de melding blijft duidelijk, het opgegeven bestand werd niet gevonden.
En de opmerking van Octafish in #2?
In het veld Werkuren staat dus C11 of C12?
 
EdMoor,

Het veld Werkuren was hiervoor een textveld waarin aangegeven kon worden of de werkuren
waren doorberekend met J of N
 
En waarom gebruik je de inhoud van dat veld dan om de naam van de te gebruiken foto op te halen?
 
Dat veld wordt niet meer gebruik, dus leek het mij makkelijk omdat veld te gebruiken
 
Uiteraard kan dat, maar dan moet daar wel de naam van de foto in staan op het moment dat deze geladen moet worden.
Er moet dus kennelijk C11 of C12 als tekst in staan.
 
Klopt, in veld T_12 staat C11 of C12

Ik heb nu kolom 12 naar kolom 13 gekopieerd, en deze moet nu matchen met T_13,

Er komt nu wel een foto in foto1, op het moment dat de 2e combobox (C_02) wordt geactiveerd,
maar die matcht? niet altijd met het veld
 

Bijlagen

  • PLANNING2708_2.xls
    52 KB · Weergaven: 43
Feit bllijft dat de naam van de te laten foto daar moet staan.
Zoniet, krijg je die fout 53.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan