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

Macro gevraagd

Status
Niet open voor verdere reacties.

cova1

Gebruiker
Lid geworden
12 aug 2010
Berichten
36
Graag oplossing voor mijn probleem, liefst macro .
excel 2016
 

Bijlagen

  • marco.xlsm
    13,4 KB · Weergaven: 34
Plak deze macro's achter knop1 resp. knop2.

Code:
Sub Knop1()
    rij = Int(7 + Rnd * (22 - 7 + 1))
    Range("F14") = Cells(rij, 1)
End Sub


Sub Knop2()
    rij = Int(6 + Rnd * (22 - 6 + 1))
    Range("F14") = Cells(rij, 1)
End Sub
 
macro's werken , maar als ik namen verwijder tot A12 bv , krijg ik in f14 soms niets,wil zeggen dat er lege cellen worden meegenomen, en dit zou niet mogen,enkel cel met naam erin.
 
Code:
Sub random_one()
 Dim a
 Randomize
 
 With Range("A7", Range("A" & Rows.Count).End(xlUp))
   a = Filter(Evaluate("transpose(if(" & .Address & "<>""""," & .Address & "))"), False, 0)
   Range("F14") = a(Int(Rnd * (UBound(a) + 1)))
 End With
End Sub



Sub random_two()
 Dim a
 Randomize
 
 With Range("A6", Range("A" & Rows.Count).End(xlUp))
   a = Filter(Evaluate("transpose(if(" & .Address & "<>""""," & .Address & "))"), False, 0)
   Range("F14") = a(Int(Rnd * (UBound(a) + 1)))
 End With
End Sub
 
Code:
Sub Knop1()
    Range("F14") = Naam(7, 22)
End Sub

Sub Knop2()
    Range("F14") = Naam(6, 22)
End Sub

Function Naam(van As Integer, tot As Integer) As String
    Randomize
    Do While Naam = vbNullString
        Naam = Cells(Int(van + Rnd * (tot - van + 1)), 1)
    Loop
End Function
 
Gebruik een dynamische tabel zodat je lege cellen voorkomt: struktuur is belangrijker dan code.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan