Help!

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

Hulp bij posten

Recente topics

Auteur Topic: Userform vraagje  (gelezen 3395 keer)

0 leden en 1 gast bekijken dit topic.

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 224
  • Geslacht: Man
  • Oplossing.be
Userform vraagje
« Gepost op: 05 januari 2023, 11:09:27 »
ik heb een userform en gebruik deze codes

For l = 0 To ListBox_Results.ListCount
        If ListBox_Results.Selected(l) = True Then
            strAddress = ListBox_Results.List(l, 1)
            strSheet = Replace(Mid(strAddress, 1, InStr(1, strAddress, "!") - 1), "'", "")
            Worksheets(strSheet).Select
            Worksheets(strSheet).Range(strAddress).Select
            With ActiveSheet
                f_FindAll.TextBox1.Value = .Cells(.Range(strAddress).Row, 1).Value
                f_FindAll.TextBox_Results1.Value = .Cells(.Range(strAddress).Row, 2).Value
                f_FindAll.TextBox_Results2.Value = .Cells(.Range(strAddress).Row, 3).Value
                f_FindAll.TextBox2.Value = .Cells(.Range(strAddress).Row, 4).Value
                f_FindAll.TextBox3.Value = .Cells(.Range(strAddress).Row, 5).Value
                f_FindAll.TextBox4.Value = .Cells(.Range(strAddress).Row, 6).Value
                f_FindAll.TextBox5.Value = .Cells(.Range(strAddress).Row, 7).Value
                f_FindAll.TextBox6.Value = .Cells(.Range(strAddress).Row, 8).Value
                f_FindAll.TextBox7.Value = .Cells(.Range(strAddress).Row, 9).Value
                f_FindAll.TextBox8.Value = .Cells(.Range(strAddress).Row, 10).Value
                End With
            GoTo EndLoop
        End If


f_FindAll.TextBox8.Value = .Cells(.Range(strAddress).Row, 10).Value roep de inhoud van de tekst op die in de Row voorkomt

mijn vraag is kan je ook een jpg oproep in de betreffende row? ipv tekst
Excel 365 NL

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.178
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Userform vraagje
« Reactie #1 Gepost op: 05 januari 2023, 18:37:14 »
Hallo Sunnybat,

Yongle gaf dit als voorbeeld;

Sub InsertPic()
    Dim PicPath As String, Pic As Picture, ImageCell As Range

    PicPath = "C:\examplefile\test" & Range("T3").Value & ".png"
    Set ImageCell = ActiveCell.MergeArea

    Set Pic = ActiveSheet.Pictures.Insert(PicPath)
    With Pic
        .ShapeRange.LockAspectRatio = msoFalse
        .Left = ImageCell.Left
        .Top = ImageCell.Top
        .Width = ImageCell.Width
        .Height = ImageCell.Height
    End With
End Sub

Waar de grootte van de afbeelding ook nog aangepast wordt aan de grootte van de cel.

Ik hoop dat je er iets aan hebt.

:) 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: 224
  • Geslacht: Man
  • Oplossing.be
Re: Userform vraagje
« Reactie #2 Gepost op: 06 januari 2023, 07:39:11 »
@SoftAid

net iets anders dan ik zou wel maar toch super
ik heb de betreffende userform ( file ) erbij gedaan waar het om gaat
misschien zijn er andere gebruikers die er ook iets mee kunnen

het gaat hier om cel K6
misschien dat iemand weet hoe je ipv tekst in
f_FindAll.TextBox9.Value = .Cells(.Range(strAddress).Row, 11).Value een jpg kan laten zien

Alvast superbedankt
Excel 365 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Userform vraagje
« Reactie #3 Gepost op: 06 januari 2023, 10:05:25 »
Hallo Sunnybat,

Om te beginnen: er is een goede reden waarom een textbox textbox heet, kortom: dat gaat niet.
Daarom zit je nog niet helemaal vast. Je zal om te beginnen die Textbox9 moeten vervangen door besturingselement 'Afbeelding'.
Het gekke is vervolgens dat je in de ontwerpmodus een afbeelding van je werkblad daar naartoe kan kopiëren, maar niet met vba (tenminste voor zover ik weet).

Afhankelijk van de vraag over hoeveel verschillende afbeeldingen dat uiteindelijk zal gaan zou je één van volgende methodes kunnen gebruiken:
- een extra userform maken waarop je alle afbeeldingen verzamelt (als het dus om een beperkt aantal zou gaan), dat userform mag dan altijd verborgen blijven, en van daaruit kan je wél kopiëren
- de afbeeldingen laden vanuit een folder (in dat geval mogen ze ook op je werkblad staan, maar dat is niet noodzakelijk, het maakt je werkmap alleen maar zwaarder)
Zelf zou ik altijd voor die laatste werkwijze kiezen, dat klinkt ingewikkelder dan het is, dus denk er eerst nog maar eens over na.

Mvg,
Molly
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 Sunnybat

  • Volledig lid
  • **
  • Berichten: 224
  • Geslacht: Man
  • Oplossing.be
Re: Userform vraagje
« Reactie #4 Gepost op: 06 januari 2023, 11:14:23 »
@MollyVH

ik had al een vermoeden, _/-\o_
ik kan ook in de index van excel file de foto tevoorschijn halen als ik over de betreffende cel ga
het is niet zo erge ramp maar ik dacht misschien dat het mogelijk was
Alvast super bedankt
Excel 365 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Userform vraagje
« Reactie #5 Gepost op: 06 januari 2023, 16:14:30 »
Hallo Sunnybat,

Citaat
het is niet zo erge ramp maar ik dacht misschien dat het mogelijk was
Natuurlijk is het wel mogelijk, ik had je toch meteen op 2 mogelijkheden gewezen ???

Hierbij een voorbeeldje. Daarin heb ik gedaan wat ik al zei, nl. eerst er vooral Textbox9 verwijderd en een 'Afbeelding' op je userform gezet. Die heb ik zo maar 'foto' genoemd.
In je code is dan
f_FindAll.TextBox9.Value = .Cells(.Range(strAddress).Row, 11).Value
vervangen door
f_FindAll.foto.Picture = LoadPicture("d:\oplossing.be\sunnybat\" & .Cells(.Range(strAddress).Row, 11).Value & ".jpg")

Die map zal je natuurlijk zelf moeten aanpassen naar de locatie waar op jouw pc de jpg-bestanden staan, en in kolom K de exacte namen van die bestanden zetten. Meer komt er niet bij kijken.
Zoals je ziet mogen ze willekeurige namen hebben, en het speelt ook geen rol of je ze ook op je werkblad zet.

Mvg,
Molly
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 Sunnybat

  • Volledig lid
  • **
  • Berichten: 224
  • Geslacht: Man
  • Oplossing.be
Re: Userform vraagje
« Reactie #6 Gepost op: 07 januari 2023, 00:35:42 »
@MollyVH

nou dit is gewoon SUPER _/-\o_ _/-\o_

hartelijk bedankt
Excel 365 NL

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 224
  • Geslacht: Man
  • Oplossing.be
Re: Userform vraagje
« Reactie #7 Gepost op: 08 januari 2023, 07:55:17 »
@MollyVH

alles werkt gewoon perfect
ik heb nog misschien een brutale vraagje, is dit ook mogelijk met een hyperlink
als je in de userform op de regel klikt dat hij de hyperlinklink opent?

Alvast weer super bedankt
Excel 365 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Userform vraagje
« Reactie #8 Gepost op: 08 januari 2023, 11:33:07 »
Hallo Sunnybat,

Je kan naar ongeveer alles en ongeveer overal een hyperlink maken, dus veel verder raak ik voorlopig niet met je vraag.
Er bestaat ook geen besturingselement 'hyperlink', dus maar weer zelf een andere manier gemaakt...
Als eenvoudig voorbeeldje heb ik dus een textbox toegevoegd en er een niet onbekend webadres in gezet ;), en het volgen van de hyperlink laten doen door dubbelklikken op die textbox.
Als we nu veel geluk hebben kom je misschien zelf wel verder tot wat je specifiek wil. Anders wordt het even geduld want vandaag zal ik geen tijd meer hebben.

Mvg,
Molly
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 Sunnybat

  • Volledig lid
  • **
  • Berichten: 224
  • Geslacht: Man
  • Oplossing.be
Re: Userform vraagje
« Reactie #9 Gepost op: 08 januari 2023, 14:38:40 »
@MollyVH

Ziet er al goed uit
en nee joh er is geen haast bij, het mooiste zou zijn net als bij die die jpg cel dat die tevoorschijn komt als je op die regel klikt
en wat je met die jpg heb gedaan is al klasse _/-\o_
Excel 365 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Userform vraagje
« Reactie #10 Gepost op: 08 januari 2023, 18:13:37 »
Hallo Sunnybat,

Onverwacht toch nog een klein gaatje gevonden vandaag...

Wat ik na mijn vorige post eigenlijk verwachtte was dat je wat duidelijker zou zijn over je concrete wensen :(
Met mijn tweedehands glazen bol bij de hand heb ik dan maar vlugvlug wat verzonnen, maar echt geen idee of je het zo in gedachten had.
O ja, ik heb ook de code bij "ListBox_Results_Click" wat opgefrist.

Wat ik overigens nog steeds niet snap is dat je bij elke volgende klik in die listbox 2 verschillende acties laat uitvoeren: én je besturingselementen op het userform bijwerken én werkblad en cel selecteren ???

Mvg,
Molly
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 Sunnybat

  • Volledig lid
  • **
  • Berichten: 224
  • Geslacht: Man
  • Oplossing.be
Re: Userform vraagje
« Reactie #11 Gepost op: 08 januari 2023, 22:56:02 »
@MollyVH

Heb alles aangepast en dit is gewoon een stuk meester werk
Wat is jou kennis  _/-\o_ nu is het helemaal compleet
kan je niet genoeg bedanken

Harstikke bedankt

Excel 365 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Userform vraagje
« Reactie #12 Gepost op: 09 januari 2023, 11:41:46 »
Hallo Sunnybat,

Oei, een 'meesterwerk'? Zelf vind ik het meer een toevalstreffer, want ik moest echt wel gokken over wat je wou. Het is natuurlijk wel leuk dat we dit geluk hebben gehad en je meteen verder kan, maar nog leuker zou zijn als je in het vervolg ook echt op onze vragen of opmerkingen zou reageren, daar haalt iedereen voordeel uit.
Toch graag gedaan, hoor !!

Mvg,
Molly
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 Sunnybat

  • Volledig lid
  • **
  • Berichten: 224
  • Geslacht: Man
  • Oplossing.be
Re: Userform vraagje
« Reactie #13 Gepost op: 14 januari 2023, 20:03:38 »
@MollyVH

nog een heel klein vraagje over de hyperlink


als ik dit
store.playstation.com als hyperlink wil gebruiken blijf ik een melding krijgen en gaat die niet naar de website
maar oplossing.be of google.nl werkt wel

als ik store.playstation.com gebruik blijft hij op deze regel een fout geven

ActiveWorkbook.FollowHyperlink Address:="https://www." & hyperlink.Text

Alvast super bedankt




Excel 365 NL

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.178
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re: Userform vraagje
« Reactie #14 Gepost op: 14 januari 2023, 20:32:15 »
Hallo Sunnybat,

We helpen natuurlijk graag.

Maar het zou ook fijn zijn als jij eens zelf wat probeerde op te lossen.
Je laatste vraag is bijvoorbeeld zo eenvoudig op te lossen, je hebt enkel niet eens gekeken naar het juiste adres, namelijk

https://store.playstation.com

De code voegt www. aan https:// toe, waarop de opdracht crasht.
Zo iets moet je toch zelf zien, denk ik dan....

Ook kan je de code beter aanpassen naar http:// in plaats van https:// 
Praktisch elke hedendaagse site heeft een deel code "htaccess" dat een http:// -aanroep naar zijn site doorstuurt naar de veilige https://

Ook www. wordt minder en minder gebruikt.
Dan zou ik deze ook uit de code laten. Dus:

Private Sub hyperlink_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
ActiveWorkbook.FollowHyperlink Address:="http://" & hyperlink.Text
End Sub

En natuurlijk de "www." , indien nodig, in je TextBox met de "hyperlink.Text" handmatig invoeren.

Ook heb ik je opmerkzaam gemaakt dat in je profielgegevens Excel 365 NL staat, maar je schrijft dat je dat niet hebt.
Kan je dat corrigeren of uitleggen 0:-)

:) 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