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
#72477
Boa tarde, pessoal.

Estou precisando de ajuda para corrigir o erro da macro da planilha anexa que serve para extrair partes do texto das células de uma coluna e inserir na Tabela "TB_Banco_de_Dados" (TABELA AZUL).

Em algumas linhas ela apresenta o resultado desejado e em outras não.

Poderiam me ajudar a verificar / corrigir o erro?

Na TABELA VERDE inseri manualmente o resultado esperado para a extração de dados para a TABELA AZUL.

Segue planilha anexa.
Você não está autorizado a ver ou baixar esse anexo.
Editado pela última vez por SandroLima em 20 Nov 2022 às 23:35, em um total de 1 vez.
#72487
Boa noite, Foxtri.

Excelente alternativa.... muito obrigado.

Outra alternativa que testei e que está dando certo e caso possa interessar a alguém:

Inseri um bloco:
Código: Selecionar todos
Do While...

Loop
e dentro dele pedi para calcular a posição dos espaços (" ") a cada mudança de linha.

Assim:
Código: Selecionar todos
Do While i <= Qtde_Oper
    
        With Plan_Origem
            Texto = Trim$(Cells(Lin, 2).Value)
            Pos_Espace1 = InStr(1, Texto, " ")
            Pos_Espace2 = InStr(Pos_Espace1 + 1, Texto, " ")
            Pos_Espace3 = InStr(Pos_Espace2 + 1, Texto, " ")
            Pos_Espace4 = InStr(Pos_Espace3 + 1, Texto, " ")
            Pos_Espace5 = InStr(Pos_Espace4 + 1, Texto, " ")
            Pos_Espace6 = InStr(Pos_Espace5 + 1, Texto, " ")
            Pos_Espace7 = InStr(Pos_Espace6 + 1, Texto, " ")
            Pos_Espace8 = InStr(Pos_Espace7 + 1, Texto, " ")
            Pos_Espace9 = InStr(Pos_Espace8 + 1, Texto, " ")
        End With
       
        With Tb_Destino
             str_Ativo = Mid$(Plan_Origem.Cells(Lin, 2).Value, Pos_Espace3, Pos_Espace6 - Pos_Espace3)
             .ListColumns("Ativo").DataBodyRange.Cells(1, 1).Value = str_Ativo
       End With
'Segue o restante da Macro
Muito obrigado novamente e tenha uma excelente semana!
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