Ir ao conteúdo
  • Cadastre-se

Visual Basic VBA Excluir Linha após Inclusão


Posts recomendados

Prezados,

 

Preciso incluir uma linha no ACCESS através do VBA, Ok para isso, mas ele só pode incluir se todos os campos obrigatórios estiverem preenchidos, isso é, pendenciar campos em branco.

 

Tentei com If e Else, porém ele da uma mensagem para cada linha na sequência (loop), então removi o else e deixei conforme abaixo.

 

If (Codigo = "" And Juncao <> "" And Regional <> "" And Cidade <> "" And Data_Recebimento_Sucursal <> 0 And Apolice <> 0 And Sucursal_Detentora <> 0 _
    And Empresa_Estipulante <> "" And Tipo_Processo <> "" And Outros <> "" And Corretor <> "" And Data_Recebimento_Central <> 0 And Responsavel_Recebimento <> "" _
    And Responsavel_Analise <> "" And Status <> "") Then

    
    stSql = "INSERT INTO Malote(Juncao, Regional, Cidade, Data_Recebimento_Sucursal, Apolice, Sucursal_Detentora, Empresa_Estipulante, Tipo_Processo, Outros," _
    & " Segurado, Dependente, Corretor, Data_Recebimento_Central, Responsavel_Recebimento, Responsavel_Analise, Status, Data_Analise, Data_Processamento_Devolucao," _
    & " Descricao_Pendencia, Sucursal, Data_Envio_Matriz, Processo_Arquivado)Values ('" & Juncao & "', '" & Regional & "', '" & Cidade & "', '" & Data_Recebimento_Sucursal & "'," _
    & " '" & Apolice & "', '" & Sucursal_Detentora & "', '" & Empresa_Estipulante & "', '" & Tipo_Processo & "', '" & Outros & "', '" & Segurado & "'," _
    & " '" & Dependente & "', '" & Corretor & "', '" & Data_Recebimento_Central & "', '" & Responsavel_Recebimento & "', '" & Responsavel_Analise & "'," _
    & " '" & Status & "', '" & Data_Analise & "', '" & Data_Processamento_Devolucao & "', '" & Descricao_Pendencia & "', '" & Sucursal & "'," _
    & " '" & Data_Envio_Matriz & "', '" & Processo_Arquivado & "')"
    con.Execute stSql
    Rows(i).Delete
    MsgBox ("Informação Incluída")

End If
      
    Next i

End Sub

 

Se eu deixar o Rows(i).Delete ele insere e apaga uma linha apenas e tem que ficar dando 150 clicks até inserir.

 

A minha ideia é que ele insira as corretas no banco e apague, deixando as erradas, ou que ele pendencie a pena as erradas, mas como?

Link para o comentário
Compartilhar em outros sites

  • mês depois...

Bom dia.

 

     Não mexo com Access, mas aranho um Excel.

 

Já tentou selecionar o range de células da linha e dar um comando find e se houver um ""(empty) ele sai da sub?

 

voce poderia também selecionar a primeira célula da linha e dar um seta pra direita e retornar o número da coluna em que parou e tratar o teu algorítimo.

 

 

Algo assim:

 

Sub Coluna()

 

Worksheets("Plan1").Select

L = 3  ' linha 3 ' ***********aqui voce determina a sua linha

cells( L, 1).Select

C = Selection.End(xlToRight).Column ' vai retornar o número da coluna

 

if C < 10 then ' se o último valor consecutivo da linha encontra-se antes da coluna J

exit sub

else

Range(Cells(L, 1), Cells(L, 10)).Select ' seleciona um range de 10 células

Selection.Copy

Worksheets("Plan2").Select ' altera a aba

Range("A1").Select

L2 =  Selection.End(xlToDown).row

L2 = L2 + 1 última linha sem registro na coluna A

    ActiveSheet.Paste

cells(L2, 11).select

Worksheets("Plan1").Select
    Selection.ClearContents

cells(L, 11).select

end if

 

exit sub

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...