MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Converter parte de campo de tabela em novo registro

    Compartilhe
    kinhosinfo
    kinhosinfo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 267
    Registrado : 23/03/2010

    [Resolvido]Converter parte de campo de tabela em novo registro

    Mensagem  kinhosinfo em 21/9/2018, 03:41

    Caros amigos,

    Mais uma vez estou eu aqui com problema que não consegui resolver. É o seguinte:
    Peguei um arquivo CSV do TRE (Tribunal Regional Eleitoral) com todos os Locais de Votação de meu estado. Fiz umas artimanhas e converti para tabela do Access. Porém tem um campo em que preciso transformá-lo em registro. O campo Seções vem todas em um mesmo campo. A base principal é ZONA e SEÇÃO (chaves) e diversos outros campos referentes aos mesmos (local, endereço, bairro, aptos, etc). Exemplo de como está:

    TbLocaisVotacao
    Zona Seções Local Endereço ........
    001 102, 103, 158, 160, 189 Colégio Agnes Rua Canadá....
    052 004, 020, 057 Instituto Walter Vieira Av. Conde da Boa Vista....
    149 124 Escola Severino Pessoa Estrada da Batalha....

    Preciso que fique assim:

    TbLocaisVotacao2018
    Zona Seção Local Endereço ........
    001 102 Colégio Agnes Rua Canadá....
    001 103 Colégio Agnes Rua Canadá....
    001 158 Colégio Agnes Rua Canadá....
    001 160 Colégio Agnes Rua Canadá....
    001 189 Colégio Agnes Rua Canadá....
    052 004 Instituto Walter Vieira Av. Conde da Boa Vista....
    052 020 Instituto Walter Vieira Av. Conde da Boa Vista....
    052 057 Instituto Walter Vieira Av. Conde da Boa Vista....
    149 124 Escola Severino Pessoa Estrada da Batalha....

    Quem pode me ajudar mais uma vez?

    Antecipadamente muito grato, abraços.

    avatar
    FabioGO
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 105
    Registrado : 22/08/2012

    Re: [Resolvido]Converter parte de campo de tabela em novo registro

    Mensagem  FabioGO em 21/9/2018, 17:41

    Veja se atende o propósito
    Anexos
    Database2.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (92 Kb) Baixado 7 vez(es)
    kinhosinfo
    kinhosinfo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 267
    Registrado : 23/03/2010

    Re: [Resolvido]Converter parte de campo de tabela em novo registro

    Mensagem  kinhosinfo em 21/9/2018, 19:09

    Caro Fábio,

    Antecipadamente MUITO OBRIGADO. Estou na rua, olhei rapidamente e acho que é isso mesmo. Vou testar ao chegar em casa e dou respostas. Olhando rapidamente acho que resolve.

    Muito grato.

    Grande abraço
    avatar
    FabioGO
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 105
    Registrado : 22/08/2012

    Re: [Resolvido]Converter parte de campo de tabela em novo registro

    Mensagem  FabioGO em 22/9/2018, 02:05

    Que bom que está no caminho. Se realmente resolveu marque o tópico com a TAG [Resolvido]
    kinhosinfo
    kinhosinfo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 267
    Registrado : 23/03/2010

    Re: [Resolvido]Converter parte de campo de tabela em novo registro

    Mensagem  kinhosinfo em 22/9/2018, 14:56

    Caros Amigos Mestres,

    Fiz as devidas alterações no código do Mestre Fábio para o meu problema e está dando erro no INSERT INTO que não estou conseguindo ver.

    Dim rs As DAO.Recordset
    Dim DivCampo() As String, Matriz(6) As String

    Set rs = CurrentDb.OpenRecordset("LocaisCSVNova")

    Do While Not rs.EOF
           
       DivCampo() = Split(rs!NSeção, ", ")
       
       j = (Int(UBound(DivCampo)))
           
       For i = 0 To j
                           
           Matriz(0) = rs!NZona
           Matriz(1) = DivCampo(i)
           Matriz(2) = rs!NNLocal
           Matriz(3) = rs![NLocal de votacao]
           Matriz(4) = rs!NBairro
           Matriz(5) = rs!NEndereço
           Matriz(6) = rs!NMunicípio
                   
           CurrentDb.Execute "INSERT INTO Locais de Votação_2018 (Zona,Seção,NLocal,Local de Votação, Bairro, Endereço, Município) VALUES ('" & Matriz(0) & "','" & Matriz(1) & "','" & Matriz(2) & "','" & Matriz(3) & "','" & Matriz(4) & "','" & Matriz(5) & "','" & Matriz(6) & "');"
           
         
       Next
       
       rs.MoveNext
           
    Loop
           
       Set rs = Nothing
       Erase Matriz
       Erase DivCampo
       
       Me.Refresh
    kinhosinfo
    kinhosinfo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 267
    Registrado : 23/03/2010

    Re: [Resolvido]Converter parte de campo de tabela em novo registro

    Mensagem  kinhosinfo em 22/9/2018, 18:29

    Caros amigos,

    Resolvido. Não vi muita lógica, redigitei toda linha, executei, FUNFOU.
    Muito grato para todos, em especial ao amigo Fábio que realmente contribuiu para resolução do meu problema.

    Grande Abraço.

      Data/hora atual: 19/3/2019, 21:49