Notifications
Clear all

Descarregar Formula usando .offset(rowcount,1).value="FmlaSE

7 Posts
2 Usuários
0 Reactions
1,018 Visualizações
(@adailtonfg)
Posts: 0
New Member
Topic starter
 

estou quebrando a cabeça para fazer com q a célula receba =SE(D2<>"";SE(O2<>"Baixado";HOJE()-D2;P2-D2);"-")

estou usando o as seguintes instruções...

rowcount = Worksheets("impressas").Range("a1").CurrentRegion.Rows.Count
With Worksheets("impressas").Range("a1")
.Offset(rowcount, 0).Value = Me.trfa.Value
.Offset(rowcount, 16).Value = Application.ActiveCell.FormulaR1C1 = _
"=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"

Sheets("Aut.Coleta").Select
End With

porem na planilha a célula esta recebendo = "FALSO"
como posso utilizar o código sem que a célula receba o valor "FALSO" e sim a formula "SE"

 
Postado : 20/06/2014 12:02 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Mude a linha em vermelho...

rowcount = Worksheets("impressas").Range("a1").CurrentRegion.Rows.Count
With Worksheets("impressas").Range("a1")
.Offset(rowcount, 0).Value = Me.trfa.Value
.Offset(rowcount, 16).Value = Application.ActiveCell.FormulaR1C1 = _
"=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"

Sheets("Aut.Coleta").Select
End With

Para:

rowcount = Worksheets("impressas").Range("a1").CurrentRegion.Rows.Count
With Worksheets("impressas").Range("a1")
.Offset(rowcount, 0).Value = Me.trfa.Value
.Offset(rowcount, 16).FormulaR1C1 = "=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"
Sheets("Aut.Coleta").Select
End With

 
Postado : 20/06/2014 12:26 pm
(@adailtonfg)
Posts: 0
New Member
Topic starter
 

Mude a linha em vermelho...
rowcount = Worksheets("impressas").Range("a1").CurrentRegion.Rows.Count
With Worksheets("impressas").Range("a1")
.Offset(rowcount, 0).Value = Me.trfa.Value
.Offset(rowcount, 16).FormulaR1C1 = "=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"
Sheets("Aut.Coleta").Select
End With

Ainda Continua recebendo o valor ="FALSO" ao invés da formula "se"

 
Postado : 20/06/2014 12:34 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Compacte e poste seu modelo.

Não faz sentido ter dado errado novamente, pois o que vc usa:
.Offset(rowcount, 16).Value = Application.ActiveCell.FormulaR1C1 = "=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"

é uma comparação, e por isso está resultando em falso. pq a formular1c1 atual da célula é diferente do texto que vc quer inserir como fórmula.

Quando eu mandei a nova linha, isso não é mais uma comparação e a fórmula deveria aparecer escrita perfeitamente na célula. Então imagino que vc fez algo errado ao aplicar a solução proposta.
.Offset(rowcount, 16).FormulaR1C1 = "=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"

FF

 
Postado : 20/06/2014 12:35 pm
(@adailtonfg)
Posts: 0
New Member
Topic starter
 

Compacte e poste seu modelo.

Não faz sentido ter dado errado novamente, pois o que vc usa:
.Offset(rowcount, 16).Value = Application.ActiveCell.FormulaR1C1 = "=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"

é uma comparação, e por isso está resultando em falso. pq a formular1c1 atual da célula é diferente do texto que vc quer inserir como fórmula.

Quando eu mandei a nova linha, isso não é mais uma comparação e a fórmula deveria aparecer escrita perfeitamente na célula. Então imagino que vc fez algo errado ao aplicar a solução proposta.
.Offset(rowcount, 16).FormulaR1C1 = "=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"

FF

A Planilha esta em anexo.... executa ela ai pfrv.

 
Postado : 20/06/2014 12:57 pm
(@adailtonfg)
Posts: 0
New Member
Topic starter
 

Compacte e poste seu modelo.

Não faz sentido ter dado errado novamente, pois o que vc usa:
.Offset(rowcount, 16).Value = Application.ActiveCell.FormulaR1C1 = "=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"

é uma comparação, e por isso está resultando em falso. pq a formular1c1 atual da célula é diferente do texto que vc quer inserir como fórmula.

Quando eu mandei a nova linha, isso não é mais uma comparação e a fórmula deveria aparecer escrita perfeitamente na célula. Então imagino que vc fez algo errado ao aplicar a solução proposta.
.Offset(rowcount, 16).FormulaR1C1 = "=IF(RC[-13]<>"""",IF(RC[-2]<>""Baixado"",RC[-13]-TODAY(),RC[-13]-RC[-1]),""-"")"

FF

A frm esta em anexo.... executa ela ai pfrv.

 
Postado : 20/06/2014 1:03 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Resolvido? Deu certo então?

 
Postado : 20/06/2014 1:53 pm