Notifications
Clear all

Gerar contador em copia de Dados

6 Posts
2 Usuários
0 Reactions
1,160 Visualizações
(@mprudencio)
Posts: 2749
Famed Member
Topic starter
 

Boa noite, estou desenvovendo uma planilha que faz a copia de alguns dados para outra aba porem eu preciso montar um contador para cada linha copiada

A macro que copia os dados esta pronta e consigo editar se for o caso.

Mas o contador eu nao consegui fazer funcionar apesar de ser algo relativamente simples.

Segue um arquivo de exemplo

Grato

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 03/12/2015 6:59 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Se entendi corretamente, adicione a Variável :

Dim sContagem As Double

e apos a linha
Application.CutCopyMode = False
Coloque
sContagem = sContagem + 1

e no final da rotina adicione :
MsgBox "Foram copiadas : - " & sContagem & " - linhas"

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 03/12/2015 8:04 pm
(@mprudencio)
Posts: 2749
Famed Member
Topic starter
 

Mauro isso vai ser aproveitado ja que estava pensando em como fazer isso, mas o que espero é o seguinte.

Com base no arquivo q postei ele vai copiar os dados e vai copiar o numero da linha com a numeraçao da linha da base de dados

Exemplo

Suponha que eu tenha que copiar a linha 5 a 10 e a 20 o codigo traz para o resultado final

os numeros 5 10 e 20 e o que quero seria 1 2 e 3

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 04/12/2015 10:02 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

No seu modelo voce tem na aba Jogos dados nas colunas "A até H" e a rotina copia de "A até H" a linha onde atender a condição de ter a palavra "OK" na linha correspondente na coluna "J", e como esta coluna está vazia coloquei só para exemplo.
Mas se entendi agora de acordo com sua aba resultado desejado, é para copiar de "B até G" onde tiver "x" na coluna "H" e no resultado colocar em "A" a contagem, é isto ?

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 04/12/2015 10:55 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Veja se é isto, só ajuste a coluna que tem a condição se não for a "J" com o termo "OK".

Sub JogarMauro()

Dim WJog    As Worksheet
Dim WJRep   As Worksheet
Dim Resp    As String
Dim sContagem As Double

Application.ScreenUpdating = False

    Set WJog = Sheets("Jogos")
        WJog.Range("B2").Value = ""
    Set WJRep = Sheets("Jogos a Repetir")
        WJRep.Select
        WJRep.Range("A2:G2").Select
        WJRep.Range(Selection, Selection.End(xlDown)).Select
        Selection.ClearContents
        WJRep.Range("A2").Select
        WJog.Select
        WJog.Range("A11").Select

Do While ActiveCell <> ""

    If ActiveCell.Offset(0, 9).Value = "OK" Then
    
        Intersect(Selection.EntireRow, Range("B:G")).Select
        Selection.Copy
        
        WJRep.Select
        WJRep.Range("B1048576").End(xlUp).Select
        ActiveCell.Offset(1, 0).Select
            
            With Selection
                .PasteSpecial Paste:=xlPasteValues
                .PasteSpecial Paste:=xlPasteFormats
            
                Application.CutCopyMode = False
    
                sContagem = sContagem + 1
    
                ActiveCell.Offset(0, -1).Value = sContagem
    
            End With
        
        WJog.Select
        ActiveCell.Offset(1, -1).Activate
    
    Else
    
        ActiveCell.Offset(1, 0).Select
    
    End If

Loop
    
    WJog.Range("A11").Activate
    WJRep.Select
    WJRep.Range("A2:G2").Select
    WJRep.Range(Selection, Selection.End(xlDown)).Select
    Selection.FormatConditions.Delete
    WJRep.Range("A2").Select
    Resp = MsgBox("Deseja Imprimir os Jogos?", vbOKCancel, "Confirme a Impressão dos Dados...")
    
    If Resp = vbCancel Then
        GoTo Sair
    Else
        WJRep.PrintOut
    End If

    WJog.Select
Sair:
    Application.ScreenUpdating = True
    MsgBox "Foram copiadas : - " & sContagem & " - linhas"

End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 04/12/2015 11:05 am
(@mprudencio)
Posts: 2749
Famed Member
Topic starter
 

Mauro ficou perfeito....

Obrigado de novo.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 04/12/2015 3:38 pm