REMOVER ULTIMA LINHA ARQUIVO TXT

VILANOVA 29/12/2010 09:15:41
#360603
Bom dia amigos, estou importando um arquivo texto aqui, mas quando chega na ultima linha, a mesma esta em branco, e ta dando erro numero 9 na ultima linha, tem como eu importar o arquivo sem considererar essas linhas em branco para evitar o erro? desde ja agradeço muito a juda.
PAMALAGOLI 29/12/2010 09:30:27
#360609
Olá Vilanova. Poste o código p/ analisarmos melhor.
VILANOVA 29/12/2010 10:17:29
#360617
  
Sub ImportarTelefone()
On Error GoTo ErrorLine
Bar.Value = 0
Cont = 0
f = FreeFile
Open txtAnexo.Text For Input As f
Bar.Max = VConta
Do While Not EOF(f)
Line Input #f, sLine
Cont = Cont + 1
If Cont >= 2 Then
Coluna = Split(sLine, [Ô];[Ô])
Set rsContatos = New ADODB.Recordset
strsql = [Ô]SELECT pesscodigo FROM cadpessoascontato Where pesscodigo = [ô][Ô] & Format(Coluna(0), [Ô]000000[Ô]) & [Ô][ô][Ô]
rsContatos.Open strsql, Conexao, adOpenDynamic, adLockReadOnly
If rsContatos.EOF Then
StrSql = [Ô]INSERT INTO cadpessoascontato([Ô]
StrSql = StrSql & [Ô]pesscodigo,conttipo,contdescricaocontato,contprincipal)[Ô]
StrSql = StrSql & [Ô] Values ([ô][Ô]
StrSql = StrSql & Format(Coluna(0), [Ô]000000[Ô]) & [Ô][ô],[ô][Ô]
StrSql = StrSql & txtTel.Text & [Ô][ô],[ô][Ô]
StrSql = StrSql & Format(Coluna(5), [Ô](@@)@@@@-@@@@[Ô]) & [Ô][ô],[ô][Ô]
StrSql = StrSql & [Ô]1[Ô] & [Ô][ô])[Ô]
With Conexao
.BeginTrans
.Execute (StrSql)
.CommitTrans
End With
End If
End If
Bar.Value = Bar.Value + 1
DoEvents
Loop
rsContatos.Close
Set rsContatos = Nothing
Close #f
Exit Sub
ErrorLine:
Conexao.RollbackTrans
MsgError
End Sub

Esta ai a rotina de importaçao.
MARCELO.TREZE 29/12/2010 10:37:40
#360620
Resposta escolhida
tenta esta modificação

Sub ImportarTelefone()
On Error GoTo ErrorLine
Bar.Value = 0
Cont = 0
f = FreeFile
Open txtAnexo.Text For Input As f
Bar.Max = VConta
Do While Not EOF(f)
Line Input #f, sline

Cont = Cont + 1
If Cont >= 2 Then
[txt-color=#e80000]If sline <> [Ô][Ô] Then[/txt-color]
Coluna = Split(sline, [Ô];[Ô])
Set rsContatos = New ADODB.Recordset
StrSql = [Ô]SELECT pesscodigo FROM cadpessoascontato Where pesscodigo = [ô][Ô] & Format(Coluna(0), [Ô]000000[Ô]) & [Ô][ô][Ô]
rsContatos.Open StrSql, Conexao, adOpenDynamic, adLockReadOnly
If rsContatos.EOF Then
StrSql = [Ô]INSERT INTO cadpessoascontato([Ô]
StrSql = StrSql & [Ô]pesscodigo,conttipo,contdescricaocontato,contprincipal)[Ô]
StrSql = StrSql & [Ô] Values ([ô][Ô]
StrSql = StrSql & Format(Coluna(0), [Ô]000000[Ô]) & [Ô][ô],[ô][Ô]
StrSql = StrSql & txtTel.Text & [Ô][ô],[ô][Ô]
StrSql = StrSql & Format(Coluna(5), [Ô](@@)@@@@-@@@@[Ô]) & [Ô][ô],[ô][Ô]
StrSql = StrSql & [Ô]1[Ô] & [Ô][ô])[Ô]
With Conexao
.BeginTrans
.Execute (StrSql)
.CommitTrans
End With
End If
End If
Bar.Value = Bar.Value + 1
[txt-color=#e80000]End If[/txt-color]
DoEvents
Loop
rsContatos.Close
Set rsContatos = Nothing
Close #f
Exit Sub
ErrorLine:
Conexao.RollbackTrans
MsgError
End Sub
Tópico encerrado , respostas não são mais permitidas