none
Arquivo XLS RRS feed

  • Pergunta

  • Bom dia.. eu tenho esse código que está lendo um arquivo XLS perfeitamente, consegui fazer uma validação por código, mas ainda preciso validar datas mas não estou conseguindo.

     

    Imports System.Data.oledb
    Imports System.data
    Partial Class _Default
     Inherits System.Web.UI.Page

       
     Protected Sub btnProcurar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnProcurar.Click
      Try
       'obtendo a string de conexão do arquivo web.config
       Dim conexaoExcel As String = System.Configuration.ConfigurationManager.ConnectionStrings.Item("conexaoExcel").ToString()
       Dim dbConn As New OleDbConnection(conexaoExcel)
       Dim strSQL As String

       'montando a instrução SQL para obter os dados da planilha selecionada na caixa de listagem ddlExcel
         
       dbConn.Open()
       strSQL = "SELECT DATA_NASC FROM [" & ddlExcel.SelectedItem.ToString() & "$]"
       'Executando a instrução SQL e criando um DataSet para receber os dados
       Dim cmd As New OleDbCommand(strSQL, dbConn)
       Dim dsExcel As New DataSet
       Dim daExcel As New OleDbDataAdapter(cmd)
         
       'preenchendo o DataSet e exibindo os dados no gridView
       daExcel.Fill(dsExcel)
       If dsExcel.Tables(0).Rows.Count = 0 Then
       Response.write("O Campo código não está marcado como 000!")
       End If
       Dim teste As String
       gdvExcel.DataSource = dsExcel
       gdvExcel.DataBind()
      Catch ex As Exception
         Throw ex
      End Try

     End Sub
    End Class

     

     

    Mas por exemplo, se eu faço um select por DATA_NASC tenho como retorno essas datas.

     

    DATA_NASC
     
    NASCIMENTO
    28101980
    28021983
    22102001

     

    Mas minha dúvida é: Como eu faço para pegar linha a linha e verificar se foi digitado da maneira correta ddmmaaaa e não dmaa ou dmaaaa TEM que ser assim sempre ddmmaaaa caso uma das linhas esteja de formato diferente à ddmmaaaa dá erro (mensagem para o usuário.. Listar as datas via select eu consegui que é essa saída que está acima, mas pegar linha por linha e ver o que tem lá dentro para validar eu não estou conseguindo por isso peço a ajuda de todos vocês.. Grata

     

    Letícia

    sexta-feira, 13 de julho de 2007 12:16

Respostas

  • Olá Leticia como vai,

    Você terá que fazer uma rotina para as suas datas

    Ou no Excel pela fórmula  

    =IF(LEN(E13);"Ok";"Erro")

    Ou por VBA

    For i = 1 To U_L
        If Len(Range("A" & i)) <> 8 Then
            MsgBox "Erro"
        End If
    Next

    Abraços,

    Baldini

     


    Baldini Fabio
    sexta-feira, 25 de junho de 2010 21:20