Notifications
Clear all

Loteria Is Null, empty, ignorar formulas

22 Posts
2 Usuários
0 Reactions
3,139 Visualizações
(@xman2000)
Posts: 0
New Member
Topic starter
 

Olá caros Colegas!

preciso fazer com que a macro que gera combinações ignore quando o conteudo da celula for uma formula, for vazio ou nulo, exceto 0 zero que nao deve ser ignorado.
achei neste link a solução mas ainda nao sei implementar.
atualmente dá erro na macro geradora de combinação, quando o valor da celula é nulo (null), formula ou a celula esta vazia.

link do site:
" https://colinlegg.wordpress.com/2014/10/31/is-your-cell-blank-or-empty/"

o sistema em anexo é de autoria do Edcronos!.
grato.

 
Postado : 16/06/2015 7:57 am
(@xman2000)
Posts: 0
New Member
Topic starter
 

atualmente dá erro na macro geradora de combinação, quando o valor da celula é nulo (null), formula ou a celula esta vazia.

a planilha Combinador puxa algumas dezenas da planilha Combinador2 via vínculo pra dar o erro e testar o sistema.

link do site:
" https://colinlegg.wordpress.com/2014/10/31/is-your-cell-blank-or-empty/"

o sistema em anexo é de autoria do Edcronos!.
grato.

 
Postado : 16/06/2015 8:05 am
(@xman2000)
Posts: 0
New Member
Topic starter
 

segue abaixo o codigo da Macro na qual desejo inserir o codigo pra ignorar os valores nulos e formulas:

Sub GeraCombinacoes()

Dim lElementos As Long
li = 9
ci = Cells(1, "d").Column
Cf = ci + Cells(4, "b").Value2 - Cells(1, "ha").Value

lf = Cells(Rows.Count, ci).End(xlUp).Row + 1
If lf < li Then lf = li
Range(Cells(li, ci), Cells(lf, Cf)).ClearContents

fixs = Cells(1, "ah").Value2
r = li
cw = ci + fixs
colun = Cells(4, "b").Value2 - fixs

Coluno = Range("dezenas").Value2 'tabela de valores
For L = 1 To UBound(Coluno, 1)
For car = 1 To UBound(Coluno, 2)
vx = Coluno(L, car)
If vx > 0 And vx < 101 Then
k = k & "|" & vx
End If
Next
Next

vj = Split(k, "|")

lElementos = UBound(vj) - LBound(vj) '+ 1
Combinacao lElementos, colun, 1
Range(Cells(li, cw), Cells(r, cw + colun - 1)).Value2 = Range(Cells(li, cw), Cells(r, cw + colun - 1)).Value2
If fixs > 0 Then Range(Cells(li, ci), Cells(r - 1, Cells(1, "d").Column + fixs - 1)).Value2 = _
Range("D1", Cells(1, Cells(1, "w").End(xlToLeft).Column)).Value2
End Sub

 
Postado : 16/06/2015 8:10 am
(@xman2000)
Posts: 0
New Member
Topic starter
 

esse caso é igual ao caso abaixo:

viewtopic.php?f=20&t=4169

" http://www.planilhando.com.br/viewtopic.php?f=20&t=4169"

Diferenciar "" de célula vazia
Mensagempor linuxtempest » Ter Abr 24, 2012 3:11 pm

 
Postado : 16/06/2015 8:14 am
(@edcronos)
Posts: 1006
Noble Member
 

como vc especificou mega sena

eu não testei mas tenta trocar essa parte
If vx > 0 And vx < 101 Then

por algo assim
If vx & "" <> "" Then

a macro funciona com qualquer caractere

 
Postado : 16/06/2015 8:17 am
(@xman2000)
Posts: 0
New Member
Topic starter
 

Oi Edcronos,

não funcionou da maneira que vc postou, coloquei do jeito que vc postou.
quando gera a combinação fica um espaço vazio referente ao lugar que tem formula retornando nada""

já tentei uma maneira que o Patropi ensinou usando NÃO.DISP() ------ "=SE(A1=1;NÃO.DISP();B1)" -----e não funcionou.
seria bom conseguir essa maneira também pois é muito útil em alguns casos.

 
Postado : 16/06/2015 8:51 am
(@edcronos)
Posts: 1006
Noble Member
 

desculpa, mas não entendi aquele monte de zero da mudança que vc fez, se vc fizer assim não vai dar certo teria que ser apenas 1 zero

 
Postado : 16/06/2015 8:55 am
(@edcronos)
Posts: 1006
Noble Member
 

e outra coisa
na parte que tem escrito
DEZENAS da Sequencia
vc tem que colocar um numero maior que a quantidade de dezenas fixas
se colocar 4 fixas o minimo a ser gerado seria 5,
senão qual seria o objetivo do gerador ?

entenda o funcionamento da planilha antes de tentar mudar as coisas

 
Postado : 16/06/2015 8:59 am
(@edcronos)
Posts: 1006
Noble Member
 

e a mudança que fiz funciona perfeitamente para zero e tira o problema de celulas vazias
agora basta vc aprender a uar a planilha

toda a parte em amarelo pode ser adicionada com valores para o desdobramento

 
Postado : 16/06/2015 9:07 am
(@edcronos)
Posts: 1006
Noble Member
 

e para evitar problemas não foi eu que inventei esse desdobrador, eu apenas fiz uma modificação para poder usar e entender

mas estou tentando desenvolver o meu sem usar recursividade

 
Postado : 16/06/2015 9:13 am
(@xman2000)
Posts: 0
New Member
Topic starter
 

Oi Edcronos,

eu gerei confusão.
eu postei um exemplo inadequado, pois tinha 0 zero no lugar que deveria ter aspas "' vazio.
o problema é que a macro geradora de combinação entende esse vazio retornado pela formula (null) como sendo um erro, e aí nao gera combinações ou deixa um espaço em branco nas sequencias geradas.

posto anexo novo exemplo, com o codigo que vc postou já implementado e com um exemplo do NãoDisp também.
usando as celulas "H1", e, " i1"

favor dê uma olhada também nos links que postei sobre esse caso, um aqui do forum e outro de um site gringo que fala sobre valores "null".

seguem os links e o arquivo anexo.
" https://colinlegg.wordpress.com/2014/10/31/is-your-cell-blank-or-empty/"
" http://www.planilhando.com.br/viewtopic.php?f=20&t=4169"

 
Postado : 16/06/2015 9:40 am
(@xman2000)
Posts: 0
New Member
Topic starter
 

Oi Edcronos.

anexei abaixo imagem zipada da tela mostrando as formulas e o erro.
.
favor veja a imagem que é esclarecedora.
.
as coisas que vc disse sobre o funcionamento do sistema eu já sabia.

 
Postado : 16/06/2015 9:52 am
(@edcronos)
Posts: 1006
Noble Member
 

o problemas creio que não seja na macro
e sim nas formulas
=CONT.VALORES(D1:V1)
as macros pegam as especificações dessas formulas
sou péssimo nessa parte ve se o pessoal ajuda a excluir a contagem de celulas com formulas mas que apresentem ""
estou sem muita paciência hoje

 
Postado : 16/06/2015 10:05 am
(@edcronos)
Posts: 1006
Noble Member
 

é na formula que indica o total de dezenas fixas
TOTAL Fixas
essa parte é apenas para ajustar a posição que começa o desdobramento
eu até saberia fazer por macro, mas estou sem animo algum

 
Postado : 16/06/2015 10:13 am
(@xman2000)
Posts: 0
New Member
Topic starter
 

.
grato Edcronos, vc foi fantastico nesse sistema.
confesso que nao entendi o que vc disse sobre erro estar na "formula", se vc quis dizer "formula" mesmo ou "vba".
quero os 2modos, usando formula e usando vba. Usando formula tentei usa "não.disp." e nao consegui.
.
Olá Colegas!
mais alguém disposto a ajudar ?
favor vejam meus 2posts anteriores que têm os links, explicações e arquivos anexos.
grato.

 
Postado : 16/06/2015 10:15 am
Página 1 / 2