copiar dados para outra planilha usando VBA

Anônima
2010-02-12T10:27:49+00:00

Pessoal, bom dia.

Estou precisando de um exemplo de macro que copie um intervalo de linhas de uma planilha (dados) para a planilha Filtro, baseado na informação retirada de uma textbox.

Ex.: Na planilha dados, eu tenho os campos: série, data, hora, umidade. Na textbox eu lanço a data e quero que a VBA retorne todos os lançamentos com essa data na planilha filtro, independente da hora lançada. To quabrando a cuca aqui e naum tah dando certo.

Outro problema. Essas informações eu retiro de um arquivo .txt que coleta as leituras de uma placa leitora. eu preciso filtrar esses dados para que a VBA naum replique informações que eu já baixei.

Grato pela ajuda

Microsoft 365 e Office | Instalar, resgatar, ativar | Para uso doméstico | Outro

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários
Resposta aceita pelo autor da pergunta
Anônima
2010-02-23T12:39:25+00:00

Utilize o gravador de amcros para auxiliar na sintaxe. Vc não precisa gravar tudo, mas apens a parte que deseja implantar.

Esta resposta foi útil?

0 comentários Sem comentários

41 respostas adicionais

Classificar por: Mais Novo
  1. Anônima
    2010-02-19T11:12:33+00:00

    Vc deve estar abrindo o txt para carregar os dados. É neste TXT , depois de aberto, que vc precisa adicionar os critério de filtro. Ou seja, vc sempre carrega todo o TXT, pois ele é sua base, mas só copia o que interessa.

    Esta resposta foi útil?

    0 comentários Sem comentários
  2. Anônima
    2010-02-19T10:20:29+00:00

    Bom dia, Luiz

    É o seguinte...Eu possuo a plan dados, que deve ser atualizada sempre que for possível e os dados devem ficar armazenados dentro dela para que gere um historico anual das leituras do controlador. O filtro ao qual vc mencionou serve para pesquisar uma data especifica, na plan FILTRO e gerar gráficos com esses dados filtrados. Eu preciso de um código que filtre o arquivo txt no momento da importação de texto e alimente de dados que eu ainda não tenho (na plan DADOS).

    Att.

    Esta resposta foi útil?

    0 comentários Sem comentários
  3. Anônima
    2010-02-18T16:31:30+00:00

    No critério de filtro que vc usa para cópia, ...

    Selection.AutoFilter Field:=2, Criteria1:="28/10/09" ' OU qq outra coisa

    ...

    inclua mais critérios.

    Esta resposta foi útil?

    0 comentários Sem comentários
  4. Anônima
    2010-02-18T16:09:00+00:00

    EU TENHO COMO BASE PONTO A DATA E HORA (HH:MM:SS). PODE ACONTECER DO CONTROLADOR REGISTRAR UM EVENTO APÓS 1 SEGUNDO DO ULTIMO EVENTO. SÓ NÃO ENTENDI A PARTE DO FILTRO. EU CRIEI UMA MACRO PARA IMPORTAR ESSE TXT PARA A PLANILHA:

    Sub ATUALIZAR()

        With ActiveSheet.QueryTables.Add(Connection:= _

            "TEXT;C:\Users\rogerio\Desktop\Granfinale\pen1.txt", Destination:=ActiveCell)

            .Name = "pen1"

               On Error Resume Next

            .FieldNames = True

            .RowNumbers = False

            .FillAdjacentFormulas = False

            .PreserveFormatting = True

            .RefreshOnFileOpen = False

            .RefreshStyle = xlInsertDeleteCells

            .SavePassword = False

            .SaveData = True

            .AdjustColumnWidth = True

            .RefreshPeriod = 0

            .TextFilePromptOnRefresh = False

            .TextFilePlatform = 850

            .TextFileStartRow = 1

            .TextFileParseType = xlDelimited

            .TextFileTextQualifier = xlTextQualifierDoubleQuote

            .TextFileConsecutiveDelimiter = False

            .TextFileTabDelimiter = True

            .TextFileSemicolonDelimiter = True

            .TextFileCommaDelimiter = False

            .TextFileSpaceDelimiter = False

            .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _

            1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 _

            , 1, 1, 1, 1)

            .TextFileTrailingMinusNumbers = True

            .Refresh BackgroundQuery:=False

        End With

    End Sub

    Esta resposta foi útil?

    0 comentários Sem comentários