Avatar billede ExcelJ95 Seniormester
14. marts 2019 - 18:32 Der er 1 løsning

VBA universitetsopgave

Hej.

Jeg læser på universitet og er lige startet på et nyt fag, hvor vi skal lære VBA.

Vi er blevet stillet denne her opgave :https://we.tl/t-zL4L9iN8jV
til vores øvelsestime - og jeg kan simpelthen ikke finde ud af det.

I opg. 4.1.1, kan jeg komme frem til at få lavet 1000 forskellige værdier mellem 6 og 8 tegn med funktionen SLUMP, men de andre krav der er,  kan jeg ikke finde ud af.
- derfor kan jeg heller ikke rigtigt komme videre med de efterfølgende opgaver.

Går vi længere ned til anden del, og siger vi, at jeg har en liste med tilfældige værdier fra en anden opgave, så opstår der også problemer.

I opg. 4.2 var mit udgangs punkt, at jeg ville lave en inputbox, og så benytte Offset til at vælge værdierne på den række som "brugeren" nu angiver. Men det virker ikke for mig, og det er vidst også forkert metode.

Så hvis der sidder nogen der ude, der har lyst til at hygge sig lidt med et bud på en løsning, så skal i være mere end velkomne.

Lige en hurtig note.
Det er en øvelsesopgave, dvs. at der er "frivillige" opgaver, som vi kan vælge at lave, enten hjemme eller til en time hvor der sidder en ældre elev og hjælper med at få det løst.

Vi er altså ikke ude i noget snyd her. Jeg søger bare noget perspektiv, andre vinkler og gode råd til at løse den :)

På forhånd tak.
Avatar billede kim1a Ekspert
14. marts 2019 - 21:43 #1
Jeg arbejder på engelsk, men du har vel allerede fået styr på de 100 studentIDs:
=randbetween(40000;499999) - lav 50
=randbetween(80000000;89999999) - lav 50
Sørg for der ikke er dubletter :-) Lav det som værdier.

Så kopierer du vel blot disse 100 ti gange, så har du 1000 registreringer hvor der er 10 med hver ID

4.2
Option Explicit
Public SelectedRow As Integer

Sub test42()
SelectedRow = InputBox("What row number")
End Sub
Hvis du er fancy så spørger boxen først om brugeren vil bruge Row(activecell)

4.3
Sub test43()

Dim studentID As String
Dim studentgrade As String
studentID = Cells(SelectedRow, 2).Value
studentgrade = Cells(SelectedRow, 1).Value
MsgBox ("StudentID=" & studentID & vbNewLine & "StudentGrade=" & studentgrade)
End Sub
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester