Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Dúvidas sobre cálculos, funções simples e aninhadas, fórmulas matriciais, etc.
  • Avatar do usuário
  • Avatar do usuário
  • Avatar do usuário
Por lulenunes
Posts
#25495
Caros amigos, boa noite.
Estou tentando criar um controle de contas a receber, porém, estou me atrapalhando com a formula, os campos que compõem a planilha são:
Emissão, NF, Cliente, Valor, Data de Vencimento, Data de Pagamento, Data de Hoje (referencia), Status

Resultado esperado:
- Que a coluna do Status fosse preenchida automaticamente seguindo o seguinte critério:
PAGO – Quando a data de pagamento for anterior ou no mesmo dia que o vencimento;
PAGO EM ATRASO – Quando a data de pagamento for posterior ao vencimento;
VENCIDO – Quando não estiver preenchida a data de pagamento e a data de vencimento seja anterior a data do dia atual;
EM ABERTO – Quando não estiver preenchida a data de pagamento e a data de vencimento seja posterior a data do dia atual;
CANCELADO – Quando a data de vencimento estiver com 01/01/01 (caso tenham outra sugestão para este evento, agradeço)

Estou usando a fórmula SE, porém, não está dando certo em hipótese alguma.

Agradeceria muito a ajuda de vocês, caso seja possível.

grato a todos.
Avatar do usuário
Por Deciog
Avatar
#25496
lulenunes, Bom Dia.

Favor conferir se é desta forma que desejas

Se minha resposta foi útil, clique em obrigado

Decio
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por Deciog
Avatar
#25501
lulenunes, Bom DIa.

Fico contente que ajudei, mas ficaria mais contente se você clicar na mãozinha onde esta escrito obrigado é uma forma de agradecimento.

Também é importante você encerrar o tópico como resolvido

Decio
Por lulenunes
Posts
#25522
Caro Decio, aproveitando, encontrei mais um problema na planilha, apesar de ter convertido para tabela quando insiro uma nova linha ela leva a formatação condicional, porém, não leva cálculo que existe na linha anterior. Consegui um código em VBA para criar uma macro vinculada a um botão para inserir linha, funciona quase perfeito, ou seja, leva a formatação e o cálculo, porém, somente fica inserindo na linha 28, poderia por gentileza, verificar onde tenho que alterar o código para que insira linha depois da última?

Segue Código:
Módulo 1
Sub Insere_Copiando()
Sheets("AGO_17").Activate
i = Sheets("AGO_17").Range("K65536").Rows.End(xlUp).Row - 1
Rows(i & ":" & i).Select
Selection.EntireRow.Insert
Rows(i - 2 & ":" & i - 2).Select
Selection.Copy
Rows(i & ":" & i + 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub

grato.
Avatar do usuário
Por Deciog
Avatar
#25525
lulenunes

Eu não sei VBA, aqui tem feras que podem ajudar nessa

Decio
Avatar do usuário
Por Reinaldo
Avatar
#25535
Em uma rapida olhada, a linha a ser inserida e determinada pela linha de codigo

i = Sheets("AGO_17").Range("K65536").Rows.End(xlUp).Row - 1

Porem essa linha está olhando a coluna K para determinar a ultima celula preenchida. Altere para uma coluna mais significativa de preenchimento; talvez coluna A
Por lulenunes
Posts
#25536
Decio, muito obrigado.

Caro Reinaldo, alterei para a coluna A porém, continua da mesma forma. Caso conheça algum outro código, lhe agradeceria muito. O que preciso até que é bem simples (ao menos na teoria), é que ao clicar em um botão seja inserida uma linha logo após a última preenchida, porém, é necessário que ao criar esta linha também venha com a formatação condicional existente na linha anterior e a fórmula (ambas na mesma coluna).

grato
Por osvaldomp
#25537
Experimente:
Código: Selecionar todos
Sub Teste()
 Dim LR As Long
  LR = Cells(Rows.Count, 1).End(3).Row
  Range("A" & LR).Resize(, 11).Copy Range("A" & LR + 1)
End Sub
ou
Código: Selecionar todos
Sub TesteV2()
  Range("A" & Cells(Rows.Count, 1).End(3).Row).Resize(, 11).Copy Range("A" & Cells(Rows.Count, 1).End(3).Row + 1)
End Sub
Se não conseguir disponibilize uma amostra do seu arquivo Excel.
Por lulenunes
Posts
#25539
Caro Osvaldo, bom dia.

O primeiro código deu certo, desculpe perturbar mais, porém, é possível fazer com que a linha inserida venha em branco e somente a celula correspondente a coluna que possui a formula e a formatação seja copiada?

Ex.: em meu caso as colunas vão de A até K e a coluna que contem a formatação condicional e a fórmula são as células da coluna J

Caso não seja possível, desde já lhe agradeço muito pois ajudou muito.
Por osvaldomp
#25546
Experimente estes. Copiam/colam somente a última célula preenchida da coluna 'J'.
Código: Selecionar todos
Sub Teste()
 Dim LR As Long
  LR = Cells(Rows.Count, 10).End(3).Row
  Range("J" & LR).Copy Range("J" & LR + 1)
End Sub
Código: Selecionar todos
Sub TesteV2()
  Range("J" & Cells(Rows.Count, 10).End(3).Row).Copy Range("J" & Cells(Rows.Count, 10).End(3).Row + 1)
End Sub
Por lulenunes
Posts
#25553
Caro Osvaldo,

O primeiro código deu certo, copiou a formula e a formatação, porém, não trouxe as demarcações(contornos) das outras células. Para facilitar estou enviando o arquivo em anexo.

Caso possa dar uma olhada serei muito grato.

abçs.
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por wesleyribeiro123
Posts Avatar
#25559
LuleNunes
Boa tarde,

Verifique se era isso que precisava...
Você não está autorizado a ver ou baixar esse anexo.
Por osvaldomp
#25565
Experimente o código abaixo.
Considerei a estrutura das planilhas MAI, JUN e JUL. Se você precisar para as outras, com estruturas diferentes, será preciso ajustar o código.
Código: Selecionar todos
Sub InsereLinha()
 Dim LR As Long
  LR = Cells(Rows.Count, 6).End(3).Row
  Rows(LR).Insert
  Range("A" & LR - 1).Resize(, 11).Copy Range("A" & LR)
  On Error Resume Next
  Range("A" & LR).Resize(, 11).SpecialCells(xlConstants).ClearContents
  Range(Cells(LR + 1, 6), Cells(LR + 1, 7)).FormulaR1C1 = "=SUM(R2C:R[-1]C)"
End Sub
Por lulenunes
Posts
#25573
Caro Osvaldo,

A planilha esta ótima, somente a célula inserida não esta entrando na soma (Valor Bruto e Valor Liquido) de resto, está ótima.

Muito obrigado.
Por osvaldomp
#25574
lulenunes escreveu: ... somente a célula inserida não esta entrando na soma (Valor Bruto e Valor Liquido) ...
Na sua planilha, na coluna 'F', a fórmula está assim =SOMA(F2:F25)
ao rodar o código uma vez o código irá atualizar a fórmula para =SOMA(F2:F26)
ao rodar o código mais uma vez a fórmula ficará assim =SOMA(F2:F27)

E o código atualiza também a fórmula da coluna 'G'.
Você quer algo diferente disso? Explique.
Por lulenunes
Posts
#25580
A intenção é exatamente essa, porém, o código não está atualizando a soma, por exemplo: a soma dos dois campos marcam F5:F33 e G5:G33, quando insiro a linha 34 (pressionando o botão) ela não atualiza, ou seja, continua somando somente até a linha 33.

Obs.: Basear-se somente na planilha AGO_17, as outras provavelmente não serão utilizadas devido a aba relatórios que estou tentando criar.

As demais colunas estão atualizando OK.

Grato e desculpe a encheção.
Por osvaldomp
#25582
Lembra disto ?
osvaldomp escreveu:Experimente o código abaixo.
Considerei a estrutura das planilhas MAI, JUN e JUL. Se você precisar para as outras, com estruturas diferentes, será preciso ajustar o código.
Aí você aplicou o código em outra planilha com estrutura diferente :?: :?: :?:
Dureza !!! :shock:
lulenunes escreveu: Obs.: Basear-se somente na planilha AGO_17,
Na planilha AGO (e em outras, COM ESTRUTURA IGUAL), utilize o código abaixo.
Código: Selecionar todos
Sub InsereLinhaV2()
  Range("A" & Cells(Rows.Count, 1).End(3).Row).Resize(, 11).Copy Range("A" & Cells(Rows.Count, 1).End(3).Row + 1)
  On Error Resume Next
  Range("A" & Cells(Rows.Count, 1).End(3).Row).Resize(, 11).SpecialCells(xlConstants).ClearContents
End Sub
obs. a sua fórmula em 'G2' da planilha AGO está errada.

sugestão - nos próximos tópicos que você abrir disponibilize SOMENTE a planilha de interesse
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord