Gerar números aleatórios exclusivos em células em branco

0

Meu intervalo de dados é de A1 a A9.

As células A2, A4, A6, A8 são células em branco.

A1, A3, A5, A7, A9 tem valores 1, 2, 3, 4, 5.

Eu quero gerar um número aleatório único em células em branco como 6, 7, 8 & 9 Estou usando a seguinte fórmula que não está funcionando, por favor ajude.

=IF(A1<>"","",RANDBETWEEN(6,9)) 
    
por Rajesh S 13.10.2017 / 11:59

2 respostas

1

Com dados como:

Experimenteestamacrocurta:

Subcroupier()Dimary(1To4)AsVariantary(1)=6ary(2)=7ary(3)=8ary(4)=9CallShuffle(ary)Range("A2") = ary(1)
    Range("A4") = ary(2)
    Range("A6") = ary(3)
    Range("A8") = ary(4)
End Sub

Public Sub Shuffle(InOut() As Variant)
    Dim I As Long, J As Long
    Dim tempF As Double, Temp As Variant

    Hi = UBound(InOut)
    Low = LBound(InOut)
    ReDim Helper(Low To Hi) As Double
    Randomize

    For I = Low To Hi
        Helper(I) = Rnd
    Next I


    J = (Hi - Low + 1) \ 2
    Do While J > 0
        For I = Low To Hi - J
          If Helper(I) > Helper(I + J) Then
            tempF = Helper(I)
            Helper(I) = Helper(I + J)
            Helper(I + J) = tempF
            Temp = InOut(I)
            InOut(I) = InOut(I + J)
            InOut(I + J) = Temp
          End If
        Next I
        For I = Hi - J To Low Step -1
          If Helper(I) > Helper(I + J) Then
            tempF = Helper(I)
            Helper(I) = Helper(I + J)
            Helper(I + J) = tempF
            Temp = InOut(I)
            InOut(I) = InOut(I + J)
            InOut(I + J) = Temp
          End If
        Next I
        J = J \ 2
    Loop
End Sub
    
por 13.10.2017 / 14:49
-1

Olá amigos, eu também tenho uma solução. Desde usando Rand ou Randbetween mesmo com Rank não está procurando sair útil coz, após qualquer exercício na planilha Excel re-snuffles a lista aleatória.
Essas duas fórmulas estão gerando a lista que eu estava procurando.

B2 = IF(A2<>"",(A2+0),A1+5)

B2 = IF(NOT(ISNUMBER(B2)),0,IF(A2<>"",(A2+0),A1+5))

NB: lista original de A2 a A10.

    
por 14.10.2017 / 14:32