Ir ao conteúdo
  • Cadastre-se
vash_lestat

Excel macro execel, fatorial, analise comb

Recommended Posts

 função fatorial, criei uma macro que faz o fatorial, já discuti na faculdade que é possível fazer uma variação do fatorial, mas como a conta é inexistente, não consigo fazer umas macro! 
Já estudei muito e até para empresas mandei e nada, vi até vídeos de jogos de loteria que faz um cálculo interessante mas nada parecido!

O fatorial 16
     ........................
(16!12!)12!   

Tem a função combin que mostra o resultado ! 
Mas eu a macro não faz é
16! 
(16!12!)"13"  

Esses números não são regras só a forma de fazer que é! 
Poderia ser 
500!
(500!400!)401! 
A variação está no 1 a mais
: Ficaria assim se fosse manual por isso coloquei essa ordem menor
 =combin(16;12)
 A :
1 2 3 4 5 6 7 8 9 10 11 12 <
1 2 3 4 5 6 7 8 9 10 11 13<
1 2 3 4 5 6 7 8 9 10 11 14<
1 2 3 4 5 6 7 8 9 10 11 15<
1 2 3 4 5 6 7 8 9 10 11 16<
1 2 3 4 5 6 7 8 9 10 12 13<<<
 mas a que  eu não consigo fazer é 
16!12!= "13!" mas que a conta não é valida, mas manualmente sai 


1 2 3 4 5 6 7 8 9 10 11 12 <
1 2 3 4 5 6 7 8 9 10 13 14<
1 2 3 4 5 6 7 8 9 10 15 16<
1 2 3 4 5 6 7 8 9 11 13 15<
1 2 3 4 5 6 7 8 9 11 14 16<
1 2 3 4 5 6 7 8 9 12 13 16<<<<<<
 a conta da primeira seria 
16x15x14x13x12x11x10x9x8x7x6x5 dividido por 12 até o 2 que daria 1.820

a segunda conta é 

16x15x14x13x12x11x10x9x8x7x6x5 dividido por 13 até o 2 dando 140!
: a macro
 e assim segue : não sei se entendeu poderia por favor me ajudar vi estou a meses apanhando rsrs 
 

formula da A

Private Sub CommandButton1_Click()
Dim vQtd As Integer
Dim Ln As Long
Dim Col As Integer
Dim W As Worksheet
Dim A, B, C, D, E, F, G, H, I, J, K, L As Integer

Set W = Planilha1

W.Select
W.Range("A:L").ClearContents

vQtd = W.Range("p2").Value           "16"
Ln = 1
Col = 1

                For A = 1 To vQtd - 11
                For B = A + 1 To vQtd - 10
                For C = B + 1 To vQtd - 9
                For D = C + 1 To vQtd - 8
                For E = D + 1 To vQtd - 7
                For F = E + 1 To vQtd - 6
                For G = F + 1 To vQtd - 5
                For H = G + 1 To vQtd - 4
                For I = H + 1 To vQtd - 3
                For J = I + 1 To vQtd - 2
                For K = J + 1 To vQtd - 1
                For L = K + 1 To vQtd
               
                
         
                
                    Cells(Ln, Col) = A
                    Cells(Ln, Col + 1) = B
                    Cells(Ln, Col + 2) = C
                    Cells(Ln, Col + 3) = D
                    Cells(Ln, Col + 4) = E
                    Cells(Ln, Col + 5) = F
                    Cells(Ln, Col + 6) = G
                    Cells(Ln, Col + 7) = H
                    Cells(Ln, Col + 8) = I
                    Cells(Ln, Col + 9) = J
                    Cells(Ln, Col + 10) = K
                    Cells(Ln, Col + 11) = L
                    Ln = Ln + 1
                   
                 Next L
                 Next K
                 Next J
                 Next I
                 Next H
                 Next G
                 Next F
                 Next E
                 Next D
                 Next C
                 Next B
                 Next A
                 
End Sub

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×