Slumpgenerator i Excel över en lista med namn

Anonym
2019-04-17T15:21:53+00:00

Önskar i Excel (Excel 2016) skapa en slumpgenerator som slumpar fram ett personnamn från en lista i Excel med en massa personnamn (t.ex. Adam, Bodil, Lisa, Peter.) Där man helst får fram ett nytt förslag varje gång.

Antingen att det visas ett nytt slumpat namn i slumpgenerator-fältet varje gång man öppnar Excelfilen. Eller ännu hellre att man har en funktion/knapp i Excel som slumpar fram ett svar när man trycker på knappen.

Hittar bara guider för hur man slumpar fram en siffra från en lista med siffror.

Microsoft 365 och Office | Excel | För hemanvändning | Windows

Låst fråga. Den här frågan har migrerats från Microsoft Support Community. Du kan rösta på om det är till hjälp, men du kan inte lägga till kommentarer eller svar eller följa frågan.

0 kommentarer Inga kommentarer
Svar godkänt av frågeställaren
Anonym
2019-04-25T08:18:05+00:00

Du kan välja helt fritt vilket område som gäller. Jag valde så Excel känner av sista raden, men har du annan data nedanför är det givetvis bra om du själv sätter området.

Ta bort raderna

Dim Antal As Long

och

Antal = ws.Range….

Sen gör du om raden

Set TabellOmr = ws.Range("A2:C" & Antal + 1)

så området omfattar din tabell, t ex

Set TabellOmr = ws.Range("A2:C109")

Slumpvärdet måste också korrigeras så antalet hamnar inom den mängd det finns namn

Slump = Int(Antal * Rnd() + 1)

Ta bort Antal och sätt in ett värde som matchar antalet, typ 108 om du har från 2 till 109.

Var det här svaret till hjälp?

0 kommentarer Inga kommentarer

16 ytterligare svar

Sortera efter: Mest användbara
  1. Anonym
    2019-04-23T09:08:02+00:00

    Okej. Kanske dum fråga, men hur ser man om vba (makro) är tillåtet i filen?

    Är en standard-Excelfil som delas internt inom företaget, via dokumenthanteringen på vårt intranät (SharePoint).

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer
  2. Anonym
    2019-04-18T13:21:15+00:00

    Länkarna (alltså själva adressen till var en länk går) kan man inte få ut via formler. Det som står i cellen är vad du kan returnera.

    Men man kan få tag på de underliggande adresserna om man tillåter att vba (dvs makro) körs på bladet. Då kan man skapa vad som kallas UDF (User Defined Functions) vilket i princip är egna formler man snickrar ihop som gör vad man kodar att de ska göra. Dessa kan sen användas på bladet som vilken annan formel som helst. Men som sagt, man måste tillåta makron på bladet.

    Om vba är acceptabelt kan jag visa hur koden ska se ut, var den ska placeras, och hur du använder den.

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer
  3. Anonym
    2019-04-18T12:27:17+00:00

    Strålande P3excel!

    En sista grej. I spalt C ligger det hyperlänkar till olika webbsidor (ett per fält). Går det att få med dom länkarna till slumpresultat-fältet?

    Följer inte med i nuvarande kodning iallafall. Endast länktexten som visas i sökresultatfältet.

    /Peter

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer
  4. Anonym
    2019-04-18T11:58:05+00:00

    Du använder samma formel som senast, och du gjorde rätt som utökade till kolumn C eller D etc, beroende på hur stor tabell du har. Det som avgör från vilken kolumn du får svar ifrån är värdet efter tabellområdet, vilket är 2 i det här fallet. Det talar om för Excel att returnera värden från den andra kolumnen i din tabellreferens, alltså kolumn B.

    Observera att 2:an inte automatiskt innebär kolumn B, utan den säger vilken kolumn utifrån den referens du angivit. Skulle du skriva

    =LETARAD($D$1:$G$100;3;0)

    alltså en 3:a, så blir det inte kolumn C utan den tredje med start från D - vilket blir kolumn F.

    Så, använd samma formel, se till så du har rätt tabelladress (utöka vid behov), och ange från vilken kolumn (ordningsmässigt från de kolumner du har) du vill ha svar ifrån.

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer