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

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
#49239
Tenho a seguinte macro:
Código: Selecionar todos
[size=85][b][i]Sub Dados_Resumo2()
'
' Dados_Resumo2 Macro
'

'
    Rows("2:2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Delete Shift:=xlUp
    Range("B2").Select
    ActiveCell.FormulaR1C1 = "OS"
    Range("C2").Select
    ActiveCell.FormulaR1C1 = "DATA"
    Range("D2").Select
    ActiveCell.FormulaR1C1 = "RECEBIDO"
    Range("E2").Select
    ActiveCell.FormulaR1C1 = "A RECEBER"
    Range("F2").Select
    ActiveCell.FormulaR1C1 = "A COBRAR"
    Range("G2").Select
    ActiveCell.FormulaR1C1 = "NOTA FISCAL"
    Range("H2").Select
    ActiveCell.FormulaR1C1 = "EMISSÃO NOTA"
    Range("B3").Select
    Sheets("Base OS").Select
    Range("A2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    ActiveSheet.Previous.Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Columns("D:D").Select
    Selection.Insert Shift:=xlToRight
    Range("D2").Select
    ActiveCell.FormulaR1C1 = "FATURADO"
    Range("C3").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],'Base OS'!C[-2]:C[4],7,0)"
    Range("D3").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-2],'Base OS'!C[-3]:C[-2],2,0)"
    Range("E3").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMIFS('Contas a Receber'!C[10],'Contas a Receber'!C[11],""RECEBIDO"",'Contas a Receber'!C[-4],'Resumo Analitico'!RC[-3])"
    Range("F3").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = _
        "=SUMIFS('Contas a Receber'!C[7],'Contas a Receber'!C[10],""A RECEBER"",'Contas a Receber'!C[-5],'Resumo Analitico'!RC[-4])"
    Range("G3").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-5],'Base OS'!C[-6]:C[-3],4,0)"
    Range("H3").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-6],'Base OS'!C[-7]:C[-3],5,0)"
    Range("I3").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-7],'Base OS'!C[-8]:C[-3],6,0)"
    Range("C3:I3").Select
    Range("I3").Activate
    Selection.Copy
    Range("I4").Select
    Selection.End(xlToLeft).Select
    Selection.End(xlDown).Select
    Range("C399").Select
    Range(Selection, Selection.End(xlUp)).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Selection.Replace What:="#N/D", Replacement:="0", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Range("C400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "TOTAL"
    Range("D400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("E400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("F400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("F400").Select
    Selection.Copy
    Range("G400").Select
    Selection.End(xlToRight).Select
    Selection.End(xlToRight).Select
    Selection.End(xlUp).Select
    Range("G2").Select
    Selection.End(xlToLeft).Select
    Range(Selection, Selection.End(xlToRight)).Select
    Application.CutCopyMode = False
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent6
        .TintAndShade = -0.249977111117893
        .PatternTintAndShade = 0
    End With
    With Selection.Font
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = 0
    End With
    With Selection
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Font.Bold = True
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    With Selection
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    With Selection
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Range("C3").Select
    Selection.End(xlDown).Select
    Selection.End(xlUp).Select
    Range("C3").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range("C3:C399").Select
    Selection.NumberFormat = "dd/mm/yyyy"
    Range("D3").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range("D3:G400").Select
    Selection.Style = "Currency"
    Selection.End(xlUp).Select
    Range("B2").Select
    Selection.End(xlDown).Select
    Range("B400:C400").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent6
        .TintAndShade = -0.249977111117893
        .PatternTintAndShade = 0
    End With
    With Selection.Font
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = 0
    End With
    With Selection
        .HorizontalAlignment = xlRight
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Font.Bold = True
    Range(Selection, Selection.End(xlToRight)).Select
    Range("B400:I400").Select
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    Range("D26").Select
    Selection.End(xlUp).Select
    Selection.End(xlToLeft).Select
    Selection.End(xlToLeft).Select
    Selection.End(xlUp).Select
    Columns("H:H").Select
    Columns("H:H").EntireColumn.AutoFit
    Columns("I:I").EntireColumn.AutoFit
    Range("H2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    Selection.End(xlUp).Select
    Selection.End(xlToLeft).Select
    Selection.End(xlUp).Select
    Selection.End(xlToLeft).Select
    Selection.End(xlToLeft).Select
    Selection.End(xlUp).Select
    Selection.End(xlToLeft).Select
    Selection.End(xlToLeft).Select
    Selection.End(xlUp).Select
    Sheets("Base OS").Select
    Columns("A:G").Select
    Range("G1").Activate
    Selection.Delete Shift:=xlToLeft
    Range("B2").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = -0.249977111117893
        .PatternTintAndShade = 0
    End With
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlMedium
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlMedium
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlMedium
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlMedium
    End With
    Selection.Borders(xlInsideVertical).LineStyle = xlNone
    Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "COLAR AQUI"
    Range("B2").Select
    Columns("B:B").EntireColumn.AutoFit
    Range("B1").Select
    Selection.End(xlToLeft).Select
    Selection.End(xlUp).Select
    Selection.End(xlToLeft).Select
    ActiveSheet.Previous.Select
    Selection.End(xlUp).Select
    Selection.End(xlToLeft).Select
End Sub[/i][/b][/size]
Gostaria de alterar toda essa parte que fala da linha 400 para a ultima linha preenchida+1
Código: Selecionar todos
  Range("C400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "TOTAL"
    Range("D400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("E400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("F400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("F400").Select
    Selection.Copy
    Range("G400").Select
E essa parte que fala da linha 399 gostaria de alterar para a ultima linha preenchida:
Código: Selecionar todos
    Selection.End(xlToLeft).Select
    Selection.End(xlDown).Select
    Range("C399").Select
#49258
Olá Guido,

troque
Código: Selecionar todos
    Selection.End(xlToLeft).Select
    Selection.End(xlDown).Select
    Range("C399").Select
por
Código: Selecionar todos
    Selection.End(xlToLeft).Select
    Selection.End(xlDown).Select
    LinFim = Range("C" & Rows.Count).End(xlUp).Row      'LINHA NOVA
    Range("C" & LinFim).Select                          'LINHA NOVA
Troque também
Código: Selecionar todos
    Range("C400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "TOTAL"
    Range("D400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("E400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("F400").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("F400").Select
    Selection.Copy
    Range("G400").Select
por
Código: Selecionar todos
    Range("C" & LinFim + 1).Select                      'LINHA NOVA
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "TOTAL"
    Range("D" & LinFim + 1).Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("E" & LinFim + 1).Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("F" & LinFim + 1).Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=SUM(R[-37]C:R[-1]C)"
    Range("F" & LinFim + 1).Select
    Selection.Copy
    Range("G" & LinFim + 1).Select
Jimmy San Juan
Editado pela última vez por Jimmy em 16 Out 2019 às 06:31, em um total de 1 vez.
#49261
Obrigado Jimmy, pode me auxiliar a fazer as alterações na parte abaixo? (o que for de C3:C399 precisa selecionar o intervalo entre C2 e a ultima linha preenchida, o que for D3:D400 precisa selecionar o intervalo entre C2 e a ultima linha preenchida +1, o que for B400:D400 precisa selecionar a ultima linha preenchida +1...
Código: Selecionar todos
    Range("C3").Select
    Selection.End(xlDown).Select
    Selection.End(xlUp).Select
    Range("C3").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range("C3:C399").Select
    Selection.NumberFormat = "dd/mm/yyyy"
    Range("D3").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range("D3:G400").Select
    Selection.Style = "Currency"
    Selection.End(xlUp).Select
    Range("B2").Select
    Selection.End(xlDown).Select
    Range("B400:C400").Select
#49265
Guido,

Tire uma dúvida. Essa macro funciona regularmente? Você manda rodar e ela faz o que você espera que faça? Pergunto porque parece uma grande lista de comandos gravados pelo gravador. Tem muitos comandos desnecessários, muitos redundantes, etc.

O que acha de em vez de remendar, passar ela a limpo. Você explica o que quer que ela faça, anexa a planilha, e vamos refazendo. Não precisamos fazer em uma paulada só. Podemos fazer uma parte, testar, validar, e ai partimos para mais uma parte, etc.

Se preferir que eu simplesmente faça as alterações que pediu, ok pra mim, mas essa macro parece um Frankenstein e passar a limpo é uma oportunidade pra você aprender.

O que acha?

Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
#49270
Boa noite!

Respondendo sua pergunta, a macro funciona em partes, estou tentando desenvolve-lá porém sou iniciante ainda.

Gostei de sua idéia, vamos lá anexei uma planilha exemplo, com 6 abas:
Contas a receber, Resumo Dados, Base OS, Listagem Faturas, Modelo Base OS e Modelo Listagem Faturas.

Obs** A aba Modelo Base OS contém um exemplo de relatório que eu exporto do nosso sistema para pegar os dados (a quantidade de linhas é variável sempre irá aumentar de acordo com nosso fluxo). Deixei algumas colunas preenchidas como "EXCLUIR" pois não preciso das informações que vem nelas, preciso somente das que não ficaram como "EXCLUIR".

Obs** A aba Modelo Listagem Faturas contém um exemplo de relatório que eu exporto do nosso sistema para pegar os dados (a quantidade de linhas é variável sempre irá aumentar de acordo com nosso fluxo). Deixei algumas colunas preenchidas como "EXEMPLO" podemos ignorar elas.


Lembrando que esses dois modelos de layout precisam ser colados nas células "B2" de suas respectivas abas, sendo a primeira aba "Base OS" e a segunda "Listagem Faturas"

Vamos para a macro:

1° Preciso que ela vá na aba "Listagem Faturas" coloque um filtro da célula em "C3:Q3".
2° Ainda na aba "Listagem Faturas" preciso que ela classifique de A até Z a célula "H3", automaticamente irá classificar junto todas as colunas agregradas no filtro (creio eu).
3° Agora na aba "Base OS" preciso que ela exclua todas as colunas que estão marcadas como "EXCLUIR".
4° Ainda na aba "Base OS" com as colunas que sobraram, preciso renomear a célula "B2" de "Número" para "OS", a célula "C2" de "Cobrado" para "Faturado".
5° Na aba "Base OS" organizar as colunas na seguinte ordem: OS, Data Cadastro, Faturado, Recebido, NF Num e NF Data.
6° Na aba "Base OS" preciso acrescentar duas colunas entre as colunas "Recebido" e "NF Num", essas colunas acrescentadas serão "A receber" e "A cobrar", para obter a informação de "A receber" preciso fazer uma função de somases (intervalo_soma será a coluna "O:O" da aba "Contas a Receber", intervalo_criterio1 será a coluna "P:P" da aba "Contas a Receber", criterio1 será "A RECEBER", intervalo_criterio2 será a coluna "A:A" da aba "Contas a Receber" e o criterio2 será a célula "B3" da aba "Base OS") já a informação de "A cobrar" preciso que a macro faça uma função de procv (valor_procurado será a célula "B3" da aba "Base OS" para buscar a informação da aba "Listagem Faturas" da coluna "H" até a coluna "N").
7° Por fim preciso que ela crie uma aba chamada "Resumo Dados" com o mesmo layout da aba "Resumo Dados" dessa planilha que anexei e consolide as informações nela sem fórmulas, e embaixo da ultima linha preenchida preciso de uma linha com o TOTAL das informações de Faturado, Recebido, A Receber e A cobrar, considerando que o número de linhas nas abas "Base OS" e "Listagem Faturas" vão aumentar e por isso a linha de TOTAL precisa ficar embaixo da ultima linha preenchida.


Não sei se consegui explicar, mas se puder me ajudar podemos ir nos falando.

Grato desde já!
Você não está autorizado a ver ou baixar esse anexo.
#49272
Vamos lá Guido,

Prefiro ir passo a passo, porque como não conheço a planilha, há maiores chances de erro, e não quero ter que refazer muita coisa se isso acontecer.

Vamos atacar inicialmente os passos 1, 2 e 3.

Dúvida: no passo 3, a macro deve varres as colunas, localizar aquelas que na linha 2 estão escrito "EXCLUIR", e exclui-la, ou você escreveu EXCLUIR só pra eu saber quais são, mas serão sempre estas?

Jimmy San Juan
#49277
Saudações a todos
Eu tenho esta macro em baixo, está a dar erro peço ajuda:

A ideia é numa sheet (Frame) quero copiar uma linha padrao com formulas para inserir numa outra (Box Filling) na última linha sempre que alguem pressionar o botão Adicione Linha,

Private Sub CommandButton1_Click()
Dim DLin As Long
Sheets("Frame").Select
Range("B4:AK4").Select
Selection.Copy
Sheets("BOX Filling").Select
DLin = Range("B4").End(xlDown).Row + 1
ActiveSheet.Paste
End Sub
#49278
Olá joseguambe,

Eu sugiro você abrir um novo tópico, só seu, para tratar desse assunto. Também é sempre desejável que anexe a planilha para facilitar a procura do erro.

Mas... já que estamos aqui, apensar de você não ter especificado qual o erro que está acontecendo, concluo que a linha não está sendo copiada para a última linha da planilha Box Filling.
Se for esse o erro, tente substituir a linha
DLin = Range("B4").End(xlDown).Row + 1
pela linha
Range("B4").End(xlDown).offset(1,-1).select
ou pela linha
Range("B" & rows.count).End(xlup).offset(1,-1).select

Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
#49285
Bom dia Guido,

Cheguei até o início do passo 6. Vamos testar até aqui, e então prosseguimos.

Falta terminar o passo 6, e o passo 7.
Lembrando que esses dois modelos de layout precisam ser colados nas células "B2" de suas respectivas abas, sendo a primeira aba "Base OS" e a segunda "Listagem Faturas"
Não entendi essa parte acima. O que quer dizer?

Jimmy San Juan
Você não está autorizado a ver ou baixar esse anexo.
Editado pela última vez por Jimmy em 16 Out 2019 às 10:17, em um total de 1 vez.
#49290
Bom dia Jimmy!
Lembrando que esses dois modelos de layout precisam ser colados nas células "B2" de suas respectivas abas, sendo a primeira aba "Base OS" e a segunda "Listagem Faturas"
As abas Modelo Base OS e Modelo Listagem Faturas não existem na planilha original, coloquei elas apenas para te mostrar o layout da base de dados que eu extraio do sistema, as informações que estão nessas abas, são coladas nas abas Base OS e Listagem Faturas, sempre nas células B2 de cada aba.

Consegui explicar?
#49301
Desculpe Guido, mas ainda não consegui entender.
...as informações que estão nessas abas, são coladas nas abas Base OS e Listagem Faturas, sempre nas células B2 de cada aba.
Como as informações de toda uma planilha podem ser colocadas em uma única célula B2?

Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
#49305
Sem problemas, vamos lá.

Na aba "Modelo Base OS" a seleção de todas informações se da em "A1:W61", essa seleção será colada na célula "B2" da aba "Base OS" assim as informações coladas ficarão distribuídas na aba "Base OS" entre "B2:X62" (obs* X62 será variável de acordo com a quantidade de linhas extraídas no sistema podendo ir até X99999) e nessa aba a macro irá excluir as colunas "C:J,P:X". Resumindo a aba "Modelo" não existe no relatório original, toda a macro será para as abas sem o nome de "Modelo".

Na aba "Modelo Listagem Faturas" a seleção de todas informações se da em "A1:P43", essa seleção será colada na célula "B2" da aba "Listagem Faturas" assim as informações coladas ficarão distribuídas na aba "Listagem Faturas" entre "B2:Q44" (obs* Q44 será variável de acordo com a quantidade de linhas extraídas no sistema podendo ir até Q99999) e o filtro que falamos anteriormente será feito entre "C3:Q3" para que possamos classificar de A-Z a célula "H3". Resumindo a aba "Modelo" não existe no relatório original, toda a macro será para as abas sem o nome de "Modelo".

Obrigado desde já pela ajuda!
#49320
guidonofrio escreveu: para obter a informação de "A receber" preciso fazer uma função de somases (intervalo_soma será a coluna "O:O" da aba "Contas a Receber", intervalo_criterio1 será a coluna "P:P" da aba "Contas a Receber", criterio1 será "A RECEBER", intervalo_criterio2 será a coluna "A:A" da aba "Contas a Receber" e o criterio2 será a célula "B3" da aba "Base OS")
Essa fórmula deve ser colocada em qual linha da coluna "A receber"?
guidonofrio escreveu: já a informação de "A cobrar" preciso que a macro faça uma função de procv (valor_procurado será a célula "B3" da aba "Base OS" para buscar a informação da aba "Listagem Faturas" da coluna "H" até a coluna "N").
Essa fórmula deve ser colocada em qual linha da coluna "A receber"?

Qual será a coluna de retorno (entre H e N)?

Jimmy San Juan
Editado pela última vez por Jimmy em 16 Out 2019 às 18:40, em um total de 1 vez.
#49321
Boa tarde Jimmy,
Código: Selecionar todos
para obter a informação de "A receber" preciso fazer uma função de somases (intervalo_soma será a coluna "O:O" da aba "Contas a Receber", intervalo_criterio1 será a coluna "P:P" da aba "Contas a Receber", criterio1 será "A RECEBER", intervalo_criterio2 será a coluna "A:A" da aba "Contas a Receber" e o criterio2 será a célula "B3" da aba "Base OS")
Essa fórmula deve ficar abaixo do título da coluna criada como "A receber" , ou seja, deverá se estender a partir da linha 3 da coluna "A receber" até a última linha preenchida da coluna de "OS".
Código: Selecionar todos
já a informação de "A cobrar" preciso que a macro faça uma função de procv (valor_procurado será a célula "B3" da aba "Base OS" para buscar a informação da aba "Listagem Faturas" da coluna "H" até a coluna "N").
Essa fórmula deve ficar abaixo do título da coluna criada como "A cobrar" , ou seja, deverá se estender a partir da linha 3 da coluna "A cobrar" até a última linha preenchida da coluna de "OS".

Quanto aos "likes", creio que já dei em todas suas mensagens, peço que me informe se faltou alguma, pois estão sendo de grande valia para mim.

Obrigado!!
#49331
Guido,
Jimmy escreveu:Cheguei até o início do passo 6. Vamos testar até aqui, e então prosseguimos.
Testou? Está tudo certo? Podemos continuar?

Jimmy San Juan
Editado pela última vez por Jimmy em 17 Out 2019 às 09:28, em um total de 1 vez.
#49345
Jimmy, a planilha anexa é o resultado depois que rodei a macro.

Existe algum meio de transformarmos na aba "Base OS" todas as linhas abaixo da "C2" de data/hora para somente a data?

Exemplo:
O formato original é assim
04/09/2019 16:59:07
Gostaria que ficasse assim
04/09/2019
Sabe dizer se é possível transformarmos todas essas datas/horas em datas após a execução da macro?
Você não está autorizado a ver ou baixar esse anexo.
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