Jump to content
Fórum Script Brasil
  • 0

Inserir linhas obedecendo um critério que está em outra aba no excel


Question

Tenho um problema "cabeludo"

Possuo uma planilha com duas abas. Uma aba chama-se Conciliado e a outra chama-se Conciliar. Abaixo um exemplo da aba Conciliar. Com base na aba Conciliar (abaixo) o excel precisa realizar alguns comandos na outra aba chamada Conciliado.

image.png.592d4ac61ef7e715538332890b219c4f.png

Comandos:

1) Primeiro tem que verificar se existe o mesmo fornecedor na aba Conciliado. Exemplo: ter que ler o ID do fornecedor (que nesta tabela acima está na B1, ID 092135.

2) Se existir este ID na aba Conciliado, é necessário "contar"a quantidade de linhas necessárias à serem incluídas. Exemplo: utilizando a tabela acima como critério, será necessário incluir apenas uma linha, referente à um lançamento que ocorreu em 18/08/2020. Já para o outro fornecedor, se encontrar o ID 601377 será necessário incluir 5 linhas, pois houveram 5 lançamentos.

Na aba Conciliado ficaria assim:

image.png.710e7244f2a40e5d634c1c8e668453f3.png

 

Alguém me ajuda?

 

image.png

Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Boa noite.

Vendo apenas a primeira questão eu fiz o seguinte código:

Public Sub CarinaSilveiraPereira()
Dim txtCategoria As String
Dim Contar As Long
Dim ulConciliado As Long
Dim x As Long
Dim xPos As Long

'Identificar o Id pelo caracter "-"
txtCategoria = ""
ulConciliado = Sheets("Conciliado").Cells(Rows.Count, "B").End(xlUp).Row
For x = 1 To ulConciliado Step 1
    xPos = InStr(Sheets("Conciliado").Cells(x, "B").Value, "-")
    If xPos > 0 Then
        'Lançar informações se um novo for encontrado
        If txtCategoria <> "" Then
            'Ainda vai ser escrito
            MsgBox Contar
        End If
        txtCategoria = Left(Sheets("Conciliado").Cells(x, "B").Value, xPos)
        txtCategoria = Replace(txtCategoria, " ", "")
        txtCategoria = Replace(txtCategoria, "-", "")
        Contar = 0
    ElseIf Sheets("Conciliado").Cells(x, "B").Value <> "" Then
        Contar = Contar + 1
    End If
    
Next x

'Lançar o ultimo
MsgBox Contar

End Sub

Olha se consegue testar o código.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Cloud Computing


  • Forum Statistics

    • Total Topics
      148875
    • Total Posts
      644917
×
×
  • Create New...