Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: Foto  (gelezen 1289 keer)

0 leden en 1 gast bekijken dit topic.

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Foto
« Gepost op: 10 mei 2023, 10:40:06 »
Hoi,

ik heb de code reeds gehad en werkt perfect alleen krijg ik het bij een andere excel lijst niet voor elkaar om een foto op te roepen
alleen als ik deze code aanpas moet de code die ik heb gehad krijg ik een t_range error
is er mss wel een manier om deze code te laten werken ?

Alvast weer bedankt

Private Sub zoeknaam_Change()
Dim MyRange As Variant
Dim c As Range
Dim i As Long
Set MyRange = Worksheets("gegevens")
Application.ScreenUpdating = False

'zoeknaam is naam van combobox waar je de naam van de medewerkers selecteert
'hierin selecteer je de naam van de medewerker, vb: Klaassen, Jan

If zoeknaam = Empty Then
    MsgBox "Kies item en druk op de zoek knop!!!"
    Exit Sub
Else
               'InStr geeft het locatienummer van waar de komma staat in de string zoeknaam
i = InStr(zoeknaam, ", ")
               'Left geeft vanaf links aantal karakters weer in de string zoeknaam.
               'we doen dit mbv de locatie van de komma
               'bv jan, klaassen dan is Instr = 4 (, staat op de 4e plek), left is dan Instr - 1 want de komma willen we niet. Left = Instr - 1 (Jan, - , wordt Jan)
stZoekenLinks = Trim(Left(zoeknaam, i - 1))
               'Hier zoeken we in de string zoeknaam naar het midden gedeelte.
               'We zoeken het gedeelte tussen de komma en de spatie
stKolomf = Mid(zoeknaam, i + 2, InStr(i + 2, zoeknaam, " ") - (i + 2)) 'Achternaam
               'Hier zoeken we gegevens rechts van de spatie.
               'met de functie Trim halen we de komma's links en recht (als deze aanwezig zijn) weg
stZoekenRechts = Right(zoeknaam, Len(zoeknaam) - InStr(i + 2, zoeknaam, " "))

    For Each c In MyRange.Range("F3:F5000")
        If c = stZoekenLinks And c.Offset(0, 1).Value = stKolomf And c.Offset(0, 2).Value = stZoekenRechts Then
   
                       KolomB.Text = MyRange.Range("B" & c.Row)
                       KolomC.Text = MyRange.Range("C" & c.Row)
                       KolomD.Text = MyRange.Range("D" & c.Row)
                       KolomE.Text = MyRange.Range("E" & c.Row)
                       KolomF.Text = MyRange.Range("F" & c.Row)
                       KolomG.Text = MyRange.Range("G" & c.Row)
                       KolomH.Text = MyRange.Range("H" & c.Row)
                       KolomI.Text = MyRange.Range("I" & c.Row)
                       KolomJ.Text = MyRange.Range("J" & c.Row)
                       KolomK.Text = MyRange.Range("K" & c.Row)
                       KolomL.Text = MyRange.Range("L" & c.Row)
                       KolomM.Text = MyRange.Range("M" & c.Row)
                       KolomN.Text = MyRange.Range("N" & c.Row)
                       KolomO.Text = MyRange.Range("O" & c.Row)
                       KolomP.Text = MyRange.Range("P" & c.Row)
                       KolomQ.Text = MyRange.Range("Q" & c.Row)
                       KolomR.Text = MyRange.Range("R" & c.Row)
                       KolomS.Text = MyRange.Range("S" & c.Row)
                       KolomT.Text = MyRange.Range("T" & c.Row)
                       KolomU.Text = MyRange.Range("U" & c.Row)
                       KolomV.Text = MyRange.Range("V" & c.Row)
                       KolomW.Text = MyRange.Range("W" & c.Row)
                       KolomX.Text = MyRange.Range("X" & c.Row)
                       KolomY.Text = MyRange.Range("Y" & c.Row)
                       KolomZ.Text = MyRange.Range("Z" & c.Row)
                       KolomAA.Text = MyRange.Range("AA" & c.Row)
                       KolomAB.Text = MyRange.Range("AB" & c.Row)
                      'jpg
                      .Image2.Picture = LoadPicture("C:\test\" & t_range(29) & ".jpg")
          End If
    Next
End If
End Sub

Excel 365 NL

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.129
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Foto
« Reactie #1 Gepost op: 10 mei 2023, 12:08:52 »
Sunnybat,

de variabele "t-range" wordt nergens gedefinieerd, ze bestaat dus niet.
Ook begin je de lijn:
.Image2.Picture = LoadPicture("C:\test\" & t_range(29) & ".jpg")met een punt, maar die lijn staat niet tussen  With - End With ???
Waar haal je steeds die code (s) vandaan?


:) SoftAid :)             
Maximum grootte bijlagen vergroot naar 4 MB
Dubbelposten, het posten op verschillende forums van dezelfde vraag, dient op
voorhand gemeld te worden, met een link naar het topic op de andere site.
Overtreding van deze regel kan bestraft worden met verbanning !

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Re: Foto
« Reactie #2 Gepost op: 10 mei 2023, 16:11:15 »
@SoftAid

heb ik paar maanden geleden van MollyVH gehad en werkt in een andere excel perfect

                'jpg
                .foto.Picture = LoadPicture("D:\Boot Covers\" & t_range(7) & ".jpg")
                'jpg
                .Image2.Picture = LoadPicture("D:\Speed Covers\CARD\" & t_range(17) & ".jpg")
                'hyperlink
                .hyperlink.Text = t_range(11)



Excel 365 NL

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.277
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Foto
« Reactie #3 Gepost op: 10 mei 2023, 16:24:11 »
Dat splitsen van die naam kan je eenvoudiger oplossen...
voornaam = split(zoeknaam, ". ")(0)
achternaam = split(zoeknaam, ". ")(1)

Maar dit terzijde en ter lering ende vermaek.
______________________________

Groet, Leo

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Foto
« Reactie #4 Gepost op: 10 mei 2023, 18:22:17 »
@ allen,
Citaat
heb ik paar maanden geleden van MollyVH gehad
Ik wil er toch even voorzichtig op wijzen dat het me extreem zou verbazen als de code uit de openingspost van mijn hand zou zijn, inclusief het Instr-gedeelte...
Het LoadPicture-deel is wel aannemelijk ;)

@ Sunnybat,
En met de vragen en adviezen van SoftAid uit #1 doe je liever weer niets?

Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.129
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Foto
« Reactie #5 Gepost op: 10 mei 2023, 18:27:04 »
heb ik paar maanden geleden van MollyVH gehad en werkt in een andere excel perfect

Sunnybat,

is best mogelijk, maar als je een nieuwe vraag stelt over code in een nieuw Excel-bestand, dan antwoord ik wat de fout is in die nieuwe code. In de code van MollyVH in het oudere bestand zal er een variabele t_range() bestaan, maar niet in de code die je in dit topic toont.
Idem met de "." voor de lijn. Die verwijst naar een adres tussen een With en een End With.

Ik had al veel fouten in de code van jou startvraag verbeterd, bvb:
Dim c      as Variant
Dim cAs      Range
VBE zal dit waarschijnlijk verbeteren, of aanduiden als fout, maar het helpt  als je correcte code plaatst.

Plaats code hier ook steeds tussen Code-tags, daarvoor is dit opgenomen in de mogelijkheden van het forum. (Weet je niet hoe?: selecteer de code en klik op het "Hekje-icoontje" in de knoppenbalk boven je bericht.)

:) SoftAid :)             


Maximum grootte bijlagen vergroot naar 4 MB
Dubbelposten, het posten op verschillende forums van dezelfde vraag, dient op
voorhand gemeld te worden, met een link naar het topic op de andere site.
Overtreding van deze regel kan bestraft worden met verbanning !

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Re: Foto
« Reactie #6 Gepost op: 10 mei 2023, 18:41:06 »
@SoftAid

Beste,

mijn vraag was ook, omdat ik dacht dat de formule die ik had gehad van MollyVh het mss ook hier kon werken maar ik kreeg een fout
mss dat hier iemand weet welke code ik moet hebben om wel een jpg aan te roepen

Alvast super bedankt voor de uitleg van hoe en wat :)
Excel 365 NL

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.129
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Foto
« Reactie #7 Gepost op: 10 mei 2023, 21:26:35 »
@ Sunnybat,

@ Sunnybat,
En met de vragen en adviezen van SoftAid uit #1 doe je liever weer niets?

Voor we verder gaan....

:) SoftAid :)             

Maximum grootte bijlagen vergroot naar 4 MB
Dubbelposten, het posten op verschillende forums van dezelfde vraag, dient op
voorhand gemeld te worden, met een link naar het topic op de andere site.
Overtreding van deze regel kan bestraft worden met verbanning !

 


www.combell.com