• 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.

Gegevens uit werkblad naar Userform lukt niet.

Status
Niet open voor verdere reacties.

Zerty

Gebruiker
Lid geworden
12 mei 2015
Berichten
110
Ik probeer een overzicht, die op een werkblad staat, te maken in een Userform .
Het leek mij eenvoudig maar blijkbaar doe ik weer iets verkeerd want het lukt langs geen kanten :(
Kan iemand mij helpen?
 

Bijlagen

  • Score test 08 10.xlsm
    28,4 KB · Weergaven: 24
Is een ListBox niet handiger?
 

Bijlagen

  • Score test 08 10 (1).xlsm
    25,9 KB · Weergaven: 22
Inderdaad, maar dat wou ik net vermijden, vandaar die Textboxen.
Vooral omdat de Highscore van klein naar groot staat en ik die dan in de Textboxen kan aanpassen (in omgekeerde volgorde zetten).
Alvast toch bedankt voor de tip en de hulp.
 
Zo?
 

Bijlagen

  • Score test 08 10 (1).xlsm
    27,6 KB · Weergaven: 22
er staat nergens een opdracht om de code uit te voeren
 

Bijlagen

  • Score test 08 10 (1).xlsm
    30,5 KB · Weergaven: 25
Laatst bewerkt:
Jazeker, dat is precies zoals ik in gedachten had, mijn oprechte dank hiervoor.
Met zo weinig code het zo perfect doen werken, dit gaat echt mijn petje te boven.
Ben superblij want ik ben er uren mee bezig geweest, om een punthoofd van te krijgen.
Nogmaals hartelijk dank.
 
Ik begrijp niet helemaal wat je met de sortering wil.

Mogelijk zoiets

Code:
Private Sub UserForm_Initialize()
  Dim j As Long, ar, ar1
  With Sheets("BKpunten").UsedRange.Resize(, 2)
    ar = .Value
    .Cells(17, 1).Resize(10, 2).Sort .Cells(17, 2), [COLOR=#FF0000]2[/COLOR], , , , , , xlNo
    ar1 = .Value
    Label13.Caption = ar1(1, 1)
    Label14 = ("   U behaalde " & ar1(2, 1) & " op 20 vragen")
      For j = 1 To 20
        If j < 11 Then Me("TextBox" & j) = ar1(j + 16, 1) Else Me("TextBox" & j) = ar1(j + 6, 2)
      Next j
    .Value = ar
  End With
End Sub

De rode 2 kan je aanpassen naar 1 (of weglaten) dan wordt het andersom gesorteerd.
 
Laatst bewerkt:
Bedankt voor de tip en de code, werkt fantastisch.
Met sorteren bedoelde ik dat met deze code [Range("A17:B26").Sort key1:=Range("B17")] de lijst in omgekeerde volgorde stond
en zodoende ook de Listbox die omgekeerde reeks toonde wat niet als Highscore overkomt.
Hierbij het afgewerkte project.
 

Bijlagen

  • Score test 09 10 LDR.xlsm
    27,1 KB · Weergaven: 32
Volgens mij doet het project niet zoveel. Je schrijft wat data weg waar je vervolgens niets mee doet. Dat stukje kan ook wel wat eenvoudiger

Code:
Sub BKscore_invoegen()
  With Sheets("BKpunten")
    .Cells(Rows.Count, 24).End(xlUp).Offset(1).Resize(, 2) = Array(.[A1].Value, .[B1].Value)
    .Range("A17:B26").Value = .Range("A5:B14").Value
    .Range("A17:B26").Sort .Range("B17"), 2, , , , , , , xlNo
  End With
End Sub

Het resultaat van de score weergeven kan ook wel wat eenvoudiger. Let er wel op dat je de code op de juiste plek zet.
Code:
x = Split("Kan beter., Middelmatige score., Goed Gedaan., Uitstekende score.", ",")
If .Range("B1") > 0 Then .Range("C1") = x(Application.Min(3, .Range("B1").Value \ 6)) Else .Range("C1") = x(0)
 
Inderdaad, stelt het niet veel voor, het is gewoon een onderdeel van een groot quizprogramma die ik aan het maken ben.
Maar ik probeer eerst liever elk onderdeel apart uit omdat mijn kennis van VBA maar beperkt is.
Ik ben ook telkens verbaast hoe jullie met zo weinig code al die bewerkingen gedaan krijgen.
Evenals de betere snelheid en het vlotter werken van het programma.
Nogmaals hartelijk dank aan iedereen voor jullie hulp, tips en oplossing.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan